text:
Checkbox button

Hello,
is there a plan to add support for - only select one checkbox in group?
https://stackoverflow.com/questions/9709209/html-select-only-one-checkbox-in-a-group
Also what do you think about changing colors for active/hover btn checkbox? They are the same now and it's not easy to differentiate is checked or not on hover when clicking.
Thanks

Hi @pnxsaz
I don't understand your usecase:

"only select one checkbox in group?"

What you are describing is a radio input not a checkbox. That behaviour is build in HTML.
I don't think checkboxes have hover state. Sorry I must be completely lost with your usecase

Behaviour is similar as radio button but allows to unselect.  There is an example at stackoverflow link. Component is https://getbootstrap.com/docs/4.0/components/buttons/#checkbox-and-radio-buttons.

I can understand the "allow to have either none or only one selected" use case (only way to do this with radio buttons is to have a neutral extra radio button acting as the "none"). Not sure how clear it would be to users, unless it's made explicit with the label/legend for the group

Not with radio but with checkbox button. Here is one more example from stackoverflow http://jsfiddle.net/X597P/

@pnxsaz that fiddle uses 3 lines of bootstrap compatible javascript to accomplish that.

Ok, I get it now. Thanks a lot for the clarification. Do you guys think this use case is common enough that it should belong in Bootstrap?
@pnxsaz To be honest I never had to deal with it that's why I might be biased, but I think this makes a perfect case for a bootstrap plugin project.

@andresgalante those are radio buttons, I meant checkbox. There is already button.js file/plugin which could be little bit changed and extended to add possible option.
Here is one more example.
Top radio button label is from B4.
Bottom checkbox button label is custom component which allows only one to be selected or none.
https://gyazo.com/52c7460f9aa954d9df6933bc2464c57b

Yeap I got it, you want to make checkboxes behave like radios.
My point is don't do it and this does not belong in bootstrap. Hacking HTML just because, is wrong.

@pat270 this isn't about the look, but behavior. anyway, it's marked as a feature request now. not sure if it's common enough to warrant inclusion into core bootstrap, leaving it up to the team/@mdo to decide (and then it'll need to be coded)

@andresgalante radio buttons will have one extra button to behave as non selected as you created the example. Checkbox buttons will not have that extra button. However the outcome is the same. There is similar discussion at stackoverflow link I provided in comment section in which I don't wish to go into 😉
Sometimes designers or developers wish to do something bit different. Is the number of views on that stackoverflow question relevant for this to be included I'm not sure. It's just a suggestion.
@bkdotcom just an example to try describing behaviour.

Please, don't add this feature to Bootstrap.

@alecpl agreed.
It's a huge UX anti-pattern.  Should you "need" this behavior for your site, it can easily be implemented with 3 lines of javascript.
For a framework that agonizes whether or not to change the cursor on button hover, this doesn't belong.

How about using validation?
Think about the more generalized case where you have multiple options but only certain combinations are possible; if the number of combinations is low you could do radio buttons for each one of them but otherwise checkboxes with validation might be the only sensible way.

This can be easily achieved with Angular Forms Validation. Somehow onChange set the other values to undefined from the array of options you have and that's it.

Will close this one as it seems to be too specific or confusing for user. Active/hover effect belong to different issue. Thanks for your feedback.

authors: Herst alecpl andresgalante bkdotcom patrickhlauke pnxsaz sarbull

repo: twbs/bootstrap


text:
Broken footer links on v4 homepage

The Examples and About links open the 404 page.

https://github.com/twbs/bootstrap/issues?q=broken+link+label%3Adocs

source: gharchive/issue

authors: XhmikosR heymrhayes

license: MIT

license_type: permissive

license_source: github-api


text:
Search 4.1 docs brings you to 4.0

On the page https://getbootstrap.com/docs/4.1/layout/overview/, I searched the term "popper".

The results brought me to,
https://getbootstrap.com/docs/4.0/getting-started/introduction/#js
instead of,
https://getbootstrap.com/docs/4.1/getting-started/introduction/#js

Duplicate of #26441.

authors: brettalton mdo


text:
Move .modal-scrollbar-measure styles into Modal.prototype._getScrollbarWidth

Is there any reasons that styles for .modal-scrollbar-measure are in Bootstrap SCSS?
As they are not related to modal styles, I'd suggest to move them into Modal.prototype._getScrollbarWidth because only there are used, and are directly related to that functionality.

Hi @iamandrewluca,
Personaly I'm not a big fan of adding inline CSS with JS, moreover when it's not a dynamic CSS.
/CC @twbs/js-review

Yeah, I don't like this approach either.

Currently it's used only in our Modal components

@Johann-S If this is a no n, I can just reuse _getScrollbarWidth in tests, redefining that function in tests it's not so good. I'll move styles back in SCSS.

yep seems good to me 👍

Closing since this seems like a no-go from us and OP has an answer :).

authors: Johann-S XhmikosR iamandrewluca mdo


text:
v5 documentation new look and feel (meta bug)

seems https://github.com/twbs/bootstrap/pull/28450 introduced a large number of changes not only to forms, but to the actual look and feel of the v5 version of getbootstrap.com
a few initial problems/issues noted with that (please feel free to add more):

[x] contrast in the top navigation bar for the links/icons falls below 4.5:1
[x] left-hand navigation scrolling is borked when the nav and page get long (you have to scroll all the way to the end of the content before the left-hand navigation scrolls
[x] once the navigation has expand/collapse disclosure widgets, they lack a role="button" and aria-expanded="true"/aria-expanded="false"
[x] hover-specific styles for the top nav, breadcrumbs, left-hand navigation, which are not applied on :focus ... so they're all niceties and styles that only work for mouse users, not keyboard users; need doubling up of :hover and :focus styles
[x] some changes were introduced to _tables.scss which don't make sense: https://github.com/twbs/bootstrap/pull/28450/files#diff-82ee1ffb694a87db828fe22dcd868aed
[x] left-hand navigation also blows up in IE11 - will be fixed in #29029
[x] Move any inline script code to application.js
[x] The docs no longer have their toggler so there's no way to navigate the docs on mobile
[x] Use our collapse plugin in the sidebar
[x] Add transition in the sidebar arrow transform
[ ] Maybe we should move forms under components since they are components themselves
[ ] IE11 shrinks the search field

Screenshot of the v5 left-hand navigation in IE11

@MartijnCuppens has made a list too https://github.com/twbs/bootstrap/pull/28450#issuecomment-511226053
We should consolidate the issues.
Also I have a PR with some fixes for things I noticed https://github.com/twbs/bootstrap/pull/29029

[ ] Move any inline script code to application.js

There are a few mobile issues

The navbar
The docs no longer have their toggler so there's no way to navigate the docs on mobile

Updated TODO

In response to the new todos added:

Add transition in the sidebar arrow tranform

I don't want them transitioning, they should immediately click. Same for using our collapse plugin if that's why folks want—there should be no transition here.

Maybe we should move forms under components since they are components themselves

Negative, forms have so much content and behaviors. I moved them to their own section on purpose.

For the transitions I don't mind. But we are reinventing the wheel here, because that's exactly why the collapse plugin exists.
As for the forms, IMO the current hierarchy just doesn't make sense. Forms are components themselves. It's just that they have their own components too which is OK.

Since:

Collapse plugin is used in sidebar, and the arrow is transitionned
There is a consensus around Forms being outside components;
IE11 is not targetted anymore
aria-expanded is used where appropriate in navigation

I think this one could be closed. Anyone?

Agreed, @patrickhlauke feel free to reopen if we missed something.

LGTM (noting though that in IE11 the docs nav is now completely inoperable - but i guess that's clearly signals the "not supporting IE11" angle)

That's due to JS errors on IE, so yeah.

authors: XhmikosR ffoodd mdo patrickhlauke


text:
Just here to test the issue section

Before opening:

Search for duplicate or closed issues
Validate and lint any HTML to avoid common problems
Read the contributing guidelines

Bug reports must include:

Operating system and version (Windows, macOS, Android, iOS)
Browser and version (Chrome, Firefox, Safari, Microsoft Edge, Opera, Android Browser)
Reduced test case and suggested fix using CodePen or JS Bin

Test on your own repos, please.

authors: SantoshUpadhye mdo


text:
Dynamic Check-Uncheck not working after Manual Check-Uncheck

BS v 5.1
Dynamic Check-Uncheck works fine except
when i manually check-uncheck,
after this even though attribute CHECKED is added or removed, checkbox doesn't change!
Please see attached screen-recording
https://user-images.githubusercontent.com/60504052/129478404-06b6eb78-a85c-4739-9bdc-d1c456086558.mov

Operating system and version (Windows 10)
Browser and version - tested in (Chrome 92.0.4515.131 (Official Build) (64-bit), Firefox 91.0 (64-bit))

You shouldn't set the checked or unchecked state of the checkbox in JavaScript by adding or removing the checked attribute, that is only meaningful to the browser on initial render. Without code, I cannot help much, but just use element.checked = true or element.checked = false or if you use jQuery, use $(element).prop('checked', true) or $(element).prop('checked', true) (note prop not attr).

Thanks,
Resolved!

authors: arvindmittal smares


text:
Added best effort support for Collapse trigger detection

The trigger was detected only if the target element had an ID attribute and it matched the value of either the href or data-target of the trigger.
This adds another minimal effort to the detection - if Collapse is triggered by clicking on a trigger, add it to the trigger list.
Test case -
Trigger

Tests passed. Automated cross-browser testing via Sauce Labs and Travis CI shows that the JavaScript changes in this pull request are: CONFIRMED
Commit: ebaf8c63e69a5b8d7ebe4539537573d75e212d43
Build details: https://travis-ci.org/twbs-savage/bootstrap/builds/69127510
(Please note that this is a fully automated comment.)

Please fix the code style; see https://travis-ci.org/twbs/bootstrap/jobs/69127483#L424
JavaScript changes require the addition of corresponding unit tests; see the readme on https://github.com/twbs/bootstrap/tree/master/js/tests for relevant how-to info.

Tests passed. Automated cross-browser testing via Sauce Labs and Travis CI shows that the JavaScript changes in this pull request are: CONFIRMED
Commit: d123dfc2b674f2c7b11df664fb98365bdadea0b9
Build details: https://travis-ci.org/twbs-savage/bootstrap/builds/69240353
(Please note that this is a fully automated comment.)

Tests failed. Automated cross-browser testing via Sauce Labs and Travis CI shows that the JavaScript changes in this pull request are: BUSTED
Commit: 9e8e94248f6ac379c7dff7dbae1b93a7d3413d93
Build details: https://travis-ci.org/twbs-savage/bootstrap/builds/69241704
(Please note that this is a fully automated comment.)

Tests failed. Automated cross-browser testing via Sauce Labs and Travis CI shows that the JavaScript changes in this pull request are: BUSTED
Commit: 730ca0c56cd68b62391fe507fb2190e9877fae52
Build details: https://travis-ci.org/twbs-savage/bootstrap/builds/69242079
(Please note that this is a fully automated comment.)

Tests passed. Automated cross-browser testing via Sauce Labs and Travis CI shows that the JavaScript changes in this pull request are: CONFIRMED
Commit: 5b6d55bb9399bd69601ada2c6db1a7cf5b55518b
Build details: https://travis-ci.org/twbs-savage/bootstrap/builds/69243424
(Please note that this is a fully automated comment.)

@cvrebert - done.

@cvrebert - sorry, but are there any remaining issues?

@cvrebert - ping... :(

CC: @fat for a design decision on whether we want to support usage of non-ID selectors

@fat - ping.

@cvrebert & @fat - ping again?

And another ping...
@cvrebert & @fat

What with Bootstrap v4's release being so close and this being something of a nice-to-have rather than a must-have, I'm inclined to stop kicking the can down the road and just decline this. @phistuck Thanks for trying though; we appreciate your effort!
@twbs/team Feel free to reopen if you disagree.

source: gharchive/pull-request

authors: cvrebert phistuck twbs-savage


text:
The version is still set to 1.0.4

I will fix this if you like, but I think it's dangerous to leave it set to the same number with the code changes that are in there. Would you prefer 1.0.5 or 1.1.0?

Fixed.

authors: fitterman mxcl

repo: tweetdeck/TDOAuth


text:
Suggestion: Have null aware annotations for the SDK

Description
When I override classes or implement interfaces from SDK IDE generates me methods with nullable parameters.
Example:
abstract class TwilioChatListenerAdapter : ChatClientListener{
    override fun onChannelDeleted(p0: Channel?) {
        TODO("Not yet implemented")
    }

I believe in almost all cases it is non null value.
Expected Behavior
Parameter type is non nullable in Kotlin
Reproduces how Often
Always
Chat Android SDK
5.0.1
P.S. Can you also submit some dummy source code some param name is not p0. Unfortunate IDE doesn't take it from javadoc.

Hi @emartynov!
Thank you for using twilio!
Yes, this improvements are on the table as well as providing convenient kotlin interfaces based on coroutines and many others. Unfortunately I can't provide any ETA at the moment.
Right now we are focused on providing adjustable network timeouts and reducing SDK size.
Also I can confirm that it is safe to change auto-generated method signature to
override fun onChannelDeleted(channel: Channel) {

Why not to open source library? I believe it is just using Chat API and doesn't contain any company secrets?
In this way you can expect other people contribution in these small improvements that will land faster.

@emartynov we will opensource it at some point certainly. Currently it doesn't seem doable.

Cool, I'm closing ticket then.

authors: berkus emartynov rusmonster

repo: twilio/twilio-chat-demo-android


text:
Load sample file

from IPFS/Arweave/Ethstorage?

do you think it would be possible to have that in a fully separate module pure js + pure python and not pyodide specifics ? or is pyodide boilerplate required ?

authors: pmp-p twinsant

repo: twinsant/Pygrounds


text:
Typeahead drop down inside modal goes under the modal container

Typeahead drop down in a modal form goes behind modal container. The .modal class is having an z-index of 1050 and the typeahead drop down (via .dropdown-menu) is having the z-index 1000.

closing in favor of this: https://github.com/twitter/bootstrap/issues/1109

authors: JoyceBabu fat

repo: twitter/bootstrap


text:
add scroll in step section

done!

license: mit

license_source: bigquery


text:
Misleading Recent Status Change

The description of the variable timestampMillisOfMostRecentStatusChange says: "Value is -1 if the note's status has never changed."
Nevertheless, I can see some notes (e.g. noteid 1790437723506921595) for which timestampMillisOfMostRecentStatusChange = -1 but firstnonnmrstatus is not the same as currentstatus, suggesting that at some point the status of these notes did change. Is this a bug?

Thanks for the question.
The feature timestampMillisOfMostRecentStatusChange was added July 2024, it is only not -1 if the note has status change after when the feature was added.
You can see the code comments here: https://github.com/twitter/communitynotes/blob/50526b6bd50cb0d501246e962a5825d4a33d77e5/sourcecode/scoring/note_status_history.py#L117

authors: jiansongc zherebilovgg

repo: twitter/communitynotes


text:
Improvements in code style.

Well, I am a bit confused about your code style.
Well, it sometimes old, sometimes mis-conceptual, sometimes doesn't fit objective-c style.
For example:
// TNLSafeOperation
// NULL and nil are equivalent here, doesn't matter, of course.
// but in objective-c self.completionHandler = nil; is more appropriate
//  [super setCompletionBlock:nil];
- (void)tnl_clearCompletionBlock
{
    [super setCompletionBlock:NULL];
}

Moreover, you don't use auto type inference that cause a lot of boring reading.
Do not tell me that you build your apps with "not brand new xcode and bleeding-edge sdk".
So, bring new features of clang and llvm to your "codebase at the end of universe".
        NSProcessInfo *processInfo = [NSProcessInfo processInfo];

will turn into
        __auto_type processInfo = [NSProcessInfo processInfo];

Again, look at TNLSafeOperation static function in .m file.
For what reason you put static function here? Is it a C API? I do not see any invocation anywhere but in this file.
Oh, similar mistake to a lot of frameworks.
NSString * const TNLBackgroundRequestOperationDidCompleteNotification = @"TNLBackgroundRequestOperationDidCompleteNotification";
NSString * const TNLBackgroundRequestURLRequestKey = @"URLRequest";
NSString * const TNLBackgroundRequestResponseKey = @"response";
NSString * const TNLBackgroundRequestURLSessionConfigurationIdentifierKey = @"identifier";
NSString * const TNLBackgroundRequestURLSessionTaskIdentifierKey = @"taskIdentifier";
NSString * const TNLBackgroundRequestURLSessionSharedContainerIdentifierKey = @"sharedContainerIdentifier";

I don't want to see these keys, well, never.
I want to see a group of them like, for example, TNLBackgroundRequest__Keys.
@interface TNLBackgroundRequest__Keys : NSObject
+ (NSString *)OperationDidCompleteNotification;
+ (NSString *)URLRequestKey;
+ (NSString *)ResponseKey;
+ (NSString *)URLSessionConfigurationIdentifierKey;
+ (NSString *)URLSessionTaskIdentifierKey;
+ (NSString *)URLSessionSharedContainerIdentifierKey;
@end

Yes, I add additional interface that mimic string enums ( not really ) in "modern" swift.
Not really sure why you use static everywhere.
static dispatch_queue_t _URLSessionTaskOperationPropertyQueue(void);
static dispatch_queue_t _URLSessionTaskOperationPropertyQueue()
{
    static dispatch_queue_t sQueue;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sQueue = dispatch_queue_create("TNLRequestOperation.URLSessionTaskOperation.atomic.queue", DISPATCH_QUEUE_CONCURRENT);
    });
    return sQueue;
}

Perfect place for them is @interface with class methods.
Sometimes you use explicit obj == nil and obj != nil.
But when your demons come out, you prefer if (obj) and if (!obj).
No code style at all?

Thank you for you comments, Dmitry.  I appreciate you taking time to volunteer feedback.  I’ll work to speak to each of your comments.
NULL for blocks
So, blocks are an interesting case since they are a C construct but in Objective-C are implemented supporting object semantics.  For C constructs, NULL is preferable since nil is not present in C.  For objects, nil is preferable.  Blocks, however, are both.  Blocks were not always objects, however, and that legacy is probably showing in my code when I use NULL for a block.
I think this is a fair critique though, and to modernize, I will take this as a task to replace NULLs we have for blocks with nil.
lack of __auto_type
I’m afraid non-boring reading is not a goal for our project.  Concrete and explicit code is a goal, unambiguous typing and avoiding performance impact are all goals however.  When you use __auto_type, that leads to type inference, which has a compile time cost.   If you use Swift in a large code base you might be familiar with how impactful this can be on compilation times and is frankly something I would like Swift to address with the ability to opt out of type inference.  Additionally, __auto_type fails preserve nullability attributes.  If you use __auto_type, you can end up passing a nullable variable as a nonnull without any compiler complaint, which is an unacceptable risk.
I think it is great that compilers are advancing to add syntactic sugar support, but this is a case where we are intentional in not supporting a specific compiler feature.  Consuming code is obviously free to do so, but the code we encapsulate in our open source projects will remain safe and explicit while avoiding imposing an unnecessary compile time cost on those building our project.
constants as extern C const values
I can see that you have a preference for the syntax you like to type when accessing constants in objective-c, which is absolutely fine to have as preference.  It is not an absolute however that your suggested way is the correct way, and us having our constants defined as we have is hardly a mistake.
For one, it is the same style choice that Apple chooses for their frameworks and thus more consistent
with Objective-C codebases at large.  Notably, there is also a cost incurred with every Objective-C selector you define that manifests in both binary size and dynamic library load times.  There is cost to extern C constants too, but not as high as the Objective-C methods.  @ricomariani, whom I respect in the world of software development, would likely point out that we are not doing enough to improve fix up costs in library loads from extern’d constants and Objective-C selectors, but we do work to not make things worse with patterns that would incur cost with no real benefit other than syntactic sugar.  As an open source project, we aim to not impose undue cost on our consumers.
static functions
This is actually the same as for why we don’t put constants in methods, but even moreso.  For internal code that we do not expose, we aim to not incur undue binary size cost or dynamic framework load time cost and so static functions are used a great deal.  They also have the benefit of being inlined by the compiler if they are only referenced in one place offering modular code without method/function call overhead.  I can understand this being potentially dry code (or even unpleasant for some) but for encapsulated code, this is an important choice we make to the benefit of all our consumers.  We will like get even more aggressive moving private code to static C functions too.
obj == nil, obj != nil, obj, !obj
We have many developers in the code base and many reviewers and you are correct that we don’t have an explicit guide for nil checking so it can waffle.  However, if we were to choose, we would ensure defensive programming practices were in place and forbid “== nil” checks as it is too close to “= nil” and could lead to accidental bugs, so I would opt for “nil == obj” or “!obj”.  I will take this feedback to clean up “obj == nil” in the project.
Another place where enforcement is important is when a boolean argument or return value is based on a reference not being NULL/nil.  It can be unsafe to treat a reference as “true”, so coersing the reference to true or false is necessary to avoid potential bugs such as (0x1000 == true) which would evaluate to false though is likely not the intent.  We do enforce this as a style, so please note places where we fail to uphold that standard.

If you don’t feel like our choices meet your needs or desires, feel free to fork TNL and make those changes for your use cases.  We have the most permissible license with apache 2.0, so you are free to do whatever you like with the code we are sharing with the open source community.
Again, thank you for the feedback on Twitter Network Layer.  Feel free to provide more feedback, it is always welcome.
If I might provide a suggestion, when providing feedback to open source projects, it is helpful to keep in mind they exist in a community of volunteers who only want to help the community with their contributions.  It can be better for facilitating discussion to present critiques as inquiries with genuine interest in learning such that if there is a problem, it can be surface in a supportive and collaborative fashion.  Being confrontational can prevent collaboration and can hurt the value you are providing with feedback and insight that wasn’t considered before you brought it up.  Keep the feedback coming, it’s welcome and valuable — just keep in mind a friendly tone in this volunteer community can benefit everyone involved.

reopening until action items are merged

It's really fun that you closed issue and then reopened it. So authoritatively.
However, let's speak about code. More issues are in this repository:
Categories over NS-classes.
It is an external library. While it is not providing custom features to these base/core classes like high-order functions or any DSL, you don't need to extend these classes at all. Moreover, some functions exist in an application that will use your library and at the end developer will do:
// NSData+SomeMethod
- (void)someMethod {
   // equal to TNL counterpart
   [NSData tnl_someMethod];
}

Is it a bless or a curse? Of course, it is a curse. You don't have any rights to extend base classes. It is the same as you provide additional framework inside your framework that injects core framework.
Correct extension of core framework in your case is:
@interface TNLNSDataExtension
+ (void)someMethod data:(NSData *)data;
+ (void)someMethodFor:(NSData *)data;
@end

Auto type inference.
I hardly believe that it even changes anything. I have codebase of an app which is around ~150k LoC. MacBook Pro 15 '' ( Late 2011 ) archives this app in 160-200 seconds or less ( 8 frameworks, 32/64 arch support, assets ).
It has 3365 tasks at archive action with 3141 occurrences of __auto_type.
Yes, if you compile iOS on MacBook Pro, it can change something. But wait. You don't.
Also you said about nullability. I insist of using __auto_type in places where it should fit well. Moreover, if you said about nullability, show me places where __auto_type will not do it job.
Consider:
- (nullable NSSet *)tnl_keysMatchingCaseInsensitiveKey:(NSString *)key
{
    NSMutableSet *keys = nil;
    TNLAssert([key isKindOfClass:[NSString class]]);
    if ([key isKindOfClass:[NSString class]]) {
        for (NSString *otherKey in self.allKeys) {
            // logic error here.
            TNLAssert([key isKindOfClass:[NSString class]]);
            if ([otherKey caseInsensitiveCompare:key] == NSOrderedSame) { // TWITTER_STYLE_CASE_INSENSITIVE_COMPARE_NIL_PRECHECKED
                if (!keys) {
                    keys = [NSMutableSet set];
                }
                [keys addObject:otherKey];
            }
        }
    }
    return keys;
}
- (nullable NSArray *)tnl_objectsForCaseInsensitiveKey:(NSString *)key
{
    TNLAssert(key);
    NSSet *keys = [self tnl_keysMatchingCaseInsensitiveKey:key];
    NSMutableArray *objects = (keys.count > 0) ? [NSMutableArray array] : nil;
    for (NSString *otherKey in keys) {
        [objects addObject:self[otherKey]];
    }
    return objects;
}

and auto_typed variant with generic improvements.
- (nullable NSSet <NSString *>*)tnl_keysMatchingCaseInsensitiveKey_VariantB:(NSString *)key
{
    TNLAssert([key isKindOfClass:[NSString class]]);

    if (![key isKindOfClass:[NSString class]]) {
        return nil;
    }

    __auto_type allKeys = (NSArray <NSString *>*)self.allKeys;
    __auto_type result = (NSMutableSet <NSString *>*)[NSMutableSet new];

    [allKeys enumerateObjectsUsingBlock:^(NSString * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
        TNLAssert([obj isKindOfClass:[NSString class]]);
        if ([obj caseInsensitiveCompare:key] == NSOrderedSame) {
            [result addObject:obj];
        }
    }];
    return result.allObjects.count > 0 ? result : nil;
}

- (nullable NSArray *)tnl_objectsForCaseInsensitiveKey_VariantB:(NSString *)key
{
    TNLAssert(key);
    __auto_type keys = [self tnl_keysMatchingCaseInsensitiveKey:key];
    // you still check for nil here. ok.
    __auto_type objects = (keys.count > 0) ? [NSMutableArray array] : nil;
    [keys enumerateObjectsUsingBlock:^(NSString * _Nonnull obj, BOOL * _Nonnull stop) {
        [objects addObject:self[obj]];
    }];
    return objects;
}

I rewrite your example in auto_type with generics. It is more readable and has fewer errors. Check your code. It has minimum one logic error or I even don't understand your code.
Interesting observation. Check out these functions:
+ (nullable instancetype)operationSafetyGuard
{
    static TNLOperationSafetyGuard *sGuard = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        NSOperatingSystemVersion version = { 7, 0, 0 }; /* arbitrarily default as iOS 7 (minimum version for TNL) */
// ....
}

and
+ (BOOL)tnl_URLSessionCanReceiveResponseViaDelegate
{
    static BOOL sBugExists;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{

        NSProcessInfo *processInfo = [NSProcessInfo processInfo];
        const NSOperatingSystemVersion OSVersion = [processInfo respondsToSelector:@selector(operatingSystemVersion)] ? processInfo.operatingSystemVersion : (NSOperatingSystemVersion){ 0, 0, 0 };
// ...
}

Did you see that you use implicit conversion to structure in first function? This kind of style is impossible with __auto_type.
Also, compare this code:
NSArray *TNLProtocolClassesForProtocolOptions(TNLRequestProtocolOptions options)
{
    if (!options) {
        return nil;
    }

    NSMutableArray *protocols = [[NSMutableArray alloc] init];
    if (TNL_BITMASK_HAS_SUBSET_FLAGS(options, TNLRequestProtocolOptionPseudo)) {
        [protocols addObject:[TNLPseudoURLProtocol class]];
    }

    return protocols;
}

TNLRequestProtocolOptions TNLProtocolOptionsForProtocolClasses(NSArray * __nullable protocols)
{
    TNLRequestProtocolOptions options = 0;
    for (Class c in protocols) {
        if ([c isSubclassOfClass:[TNLPseudoURLProtocol class]]) {
            options |= TNLRequestProtocolOptionPseudo;
        }
    }

    return options;
}

to
NSArray <Class>*TNLProtocolClassesForProtocolOptions_VersionB(TNLRequestProtocolOptions options)
{
    if (!options) {
        return nil;
    }

    __auto_type protocols = [[NSMutableArray alloc] init];
    if (TNL_BITMASK_HAS_SUBSET_FLAGS(options, TNLRequestProtocolOptionPseudo)) {
        [protocols addObject:[TNLPseudoURLProtocol class]];
    }

    return protocols;
}

TNLRequestProtocolOptions TNLProtocolOptionsForProtocolClasses_VersionB(NSArray <Class>* __nullable protocols)
{
    TNLRequestProtocolOptions options = 0;
    // enumerateObjectsUsingBlock automatically insert type, so, I prefer it here instead of fast enumeration.
    [protocols enumerateObjectsUsingBlock:^(Class  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
        if ([obj isSubclassOfClass:[TNLPseudoURLProtocol class]]) {
            options |= TNLRequestProtocolOptionPseudo;
        }
    }];
    return options;
}

Not the best place to compare, but it is now more readable for a big amount of developers.
Too much runtime?
Well, I hardly believe that objc_setAssociatedObject and objc_getAssociatedObject are required in good designed software.
It is a cheat that adds invisible tissue between two objects. It is so implicit.
Outdated code.
Your deployment target is iOS 8. However, somewhere in project you still check target version ( >= 8 ). But, it can be nice if not an one thing - you sometimes check methods that SURELY exists.
// WHAT?
// Maybe I don't know something?
+ (BOOL)tnl_supportsSharedContainerIdentifier
{
    static BOOL sSupported;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        // Get the default config and check if it responds
        NSURLSessionConfiguration *defaultConfig = [NSURLSessionConfiguration defaultSessionConfiguration];
        sSupported = [defaultConfig respondsToSelector:@selector(setSharedContainerIdentifier:)];
    });
    return sSupported;
}

Well, I inspected project.
Yes, a lack of management. Nice.
Deployment targets:
Project:

macOS 10.8
iOS 7

Targets:

macOS 10.12
iOS 8

Moreover, you have a lot of #if TARGET_ stuff, which is also outdated in some cases. Again, nearly everyone ( and also you ), will use this library with latest Xcode ( latest Xcode also doesn't support old OS, thus, no fears to use latest clang/llvm and other features ).
Consider:
+ (BOOL)tnl_URLSessionSupportsDecodingBrotliContentEncoding
{
    static BOOL sBrotliSupported = NO;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{

        NSProcessInfo *processInfo = [NSProcessInfo processInfo];
        if (![processInfo respondsToSelector:@selector(operatingSystemVersion)]) {
            // version is too low
            return;
        }

        const NSOperatingSystemVersion OSVersion = processInfo.operatingSystemVersion;
        (void)OSVersion;
#if TARGET_OS_IPHONE
    #if defined(__IPHONE_11_0) && (__IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_11_0)
        if (OSVersion.majorVersion >= 11) {
            sBrotliSupported = YES;
        }
    #endif
#elif TARGET_OS_TV
    #if defined(__TVOS_11_0) && (__TV_OS_VERSION_MAX_ALLOWED >= __TVOS_11_0)
        if (OSVersion.majorVersion >= 11) {
            sBrotliSupported = YES;
        }
    #endif
#elif TARGET_OS_WATCH
    #if defined(__WATCHOS_4_0) && (__WATCH_OS_VERSION_MAX_ALLOWED >= __WATCHOS_4_0)
        if (OSVersion.majorVersion >= 4) {
            sBrotliSupported = YES;
        }
    #endif
#elif TARGET_OS_OSX
    #if defined(__MAC_10_13) && (__MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_10_13)
        if (OSVersion.majorVersion > 10) {
            // Assume post "10" will have brotli
            sBrotliSupported = YES;
        } else if (OSVersion.majorVersion == 10 && OSVersion.minorVersion >= 13) {
            sBrotliSupported = YES;
        }
    #endif
#else
        // Unexpected target, assume it cannot be used
        sBrotliSupported = NO;
#endif

    });

    return sBrotliSupported;
}

@end

and
+ (BOOL)tnl_URLSessionSupportsDecodingBrotliContentEncoding_VersionB
{
    static __auto_type sBrotliSupported = NO;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        __auto_type processInfo = [NSProcessInfo processInfo];
        const __auto_type OSVersion = processInfo.operatingSystemVersion;
        if (@available(macOS 10.13.0, iOS 11.0.0, tvOS 11.0.0, watchOS 4.0.0)) {
            sBrotliSupported = YES;
        } else {
            sBrotliSupported = NO;
        }
    });
    return sBrotliSupported;
}

Static functions and extern constants.
Let me search through project again.

string
results
in files

respondsToSelector
109
18

Is it enough to optimize?
Plan
So, after all there is a plan to remove outdated code.

[] replace id with instancetype.
[] replace #if TARGET with if (@available) where it possible.
[] consider __auto_type.
[] put self.class where it possible ( instead of explicit type ).
[] put deployment targets in Project instead of Target. Cleanup targets custom build settings if possible.
[] retire respondToSelector: where it possible. Many APIs are available in iOS 8 which you check everywhere. Your deployment target is iOS 8.
[] wrap categories of base/core NS classes into wrappers. You shouldn't pollute this classes even with prefixed methods.

Belief.
I sincere believe that this project has a lot of abilities and complex parts which are empowered by ObjC dynamic nature.
However, it wasn't polished well and it has hidden errors.

Thank you again, I've responded to each of your comments below.
Categories of NS-classes.
We have categories on Apple classes to extend abilities and use a prefix of tnl_ to ensure there will be no conflict between TNL code, Apple code or any consuming code.  Consumers can use indirection to access TNL extensions, or access them directly, or just ignore their existence -- no problem.  Apple calls out that code that is not Apple code and is extending Apple code (categories or subclassing large classes) needs 3 character (or more) prefixing to avoid conflict.  We adopt this rigorously for the safety of consumers.
We needn't debate this, I think we are at a difference of opinion here.  We will continue with our rigor using prefixed method names for categories.
Auto type inference.
We have 1.5 million lines of code, and type inference absolutely has impact (MBP 15", late 2014).  If you find it negligible, that is great, however it is hardly worth us risking impacting users for little gain in encapsulated code.
There's plenty of commentary of nullability being lost with __auto_type including radars that Apple is not going to address:
https://openradar.appspot.com/27062504
That alone make __auto_type unviable for a rigorous implementation.
Your example for tnl_keysMatchingCaseInsensitiveKey: you say there is a logic error, however there is none that I see.  The rewrite you provide basically has minimal style differences with the use of __auto_type, but otherwise is no different.  I'd be fine with your rewrite without the __auto_type being used.   You say you don't understand the code that you rewrote, and I believe that, but there's hardly enough change between the implementations for us to revise.  It seems you care more about avoiding fast enumeration than anything in your examples, which is your preference.
With the NSOperatingSystemVersion conversions, I don't see the problem.  C works like this...I should have cast to the specific struct in the first method you called out, but otherwise, I see no issues.
Your example with TNLProtocols appears to just be a preference for __autotype vs explicit type being present, which is a fine preference, but not really compelling for needing a change.
I think you might be seeing more value in __auto_type than I can see, and perhaps even conflating what it does with something that it doesn't do.  That's fine, however let's agree to disagree here as we won't be incurring the risk of nullability being lost nor do we want to stop having explicit types present for readability.
Too much runtime?
I agree, associated objects would hardly be necessary in good software design, however the Apple frameworks fail to offer the context necessary to accomplish associations needed in our robust network layer and so we are working around those deficiencies in the framework we were provided and use associated objects to do so.  We only use them as a last resort and, in our limited use, there is no other reasonable option.  These associated objects are always invisible to the consumer of TNL, they never need to know about it and so the encapsulated implicitness you cite is not an exposed problem.
Outdated code.
You have a good point here.  We had support for a static library for TNL that was iOS 7+.  Prior to open source, we did eliminate that target, and so there is not iOS 7 need anymore in TNL.
I am going to take this as an action item for a deep revisiting of our code to 1) presume iOS 8+ support and 2) move to @available checks.
Regarding the brotli check, however, that code is necessary.  If the target does not link to iOS 11, Brotli will not be used, thus it is insufficient to just check the runtime OS version, we need to check the compiled target version too.  I will add a comment to make this explicitly clear.
ISSUE #6
Static functions and extern constants.
You just searched for respondsToSelector, which is inaccurate.  The vast majority of the respondsToSelector checks are for accessing optional methods/properties of TNL defined protocols.  In reality, there are about 10 cases where we use respondsToSelector to check that the Apple framework API is available.  Those will get cleaned up with ISSUE #6 and what will remain is going to be just TNL protocol selector checks which are completely valid.
Also, I have no idea how you are relating respondsToSelector to static functions and extern constants and asking "enough to optimize?"  If you are not understanding the impact that large numbers of selectors have on binary size and dynamic load time, I leave that as an exercise for you to research.  We are well versed in the cost, so we work to minimize that impact and are not going to be revising this choice.
Plan

replace id with instancetype.

hard to action on without pointing out where you see this as an issue: perhaps a Pull Request with the changes you have in mind

replace #if TARGET with if (@available) where it possible.

places that can, I will update.  Places that cannot (Brotli check) will maintain the #if checks.

consider __auto_type.

we will not be adopting __auto_type

put self.class where it possible ( instead of explicit type ).

hard to action on without pointing out where you see this as an issue: perhaps a Pull Request with the changes you have in mind

put deployment targets in Project instead of Target. Cleanup targets custom build settings if possible.

this was in service of our gone static lib that supported iOS 7.  I will address and have the project move to iOS 8, and targets will inherit from the project.

retire respondToSelector: where it possible. Many APIs are available in iOS 8 which you check everywhere. Your deployment target is iOS 8.

There are only a handful of places we do this for iOS 8 related checks, those will go away with ISSUE #6

wrap categories of base/core NS classes into wrappers. You shouldn't pollute this classes even with prefixed methods.

I see no reason to do this, please share documentation or resources that point to this being an issue

Closing
Going forward, we would like to address issues one at a time.  Please file individual issues per issue rather than a single issue covering multiple things.

Small update, I went through the code and there was only 1 place we set NULL for a block.  I have updated that on the twitter repo and it will be merge to this github repo on the next integration.

authors: NSProgrammer lolgear

repo: twitter/ios-twitter-network-layer


text:
Benchmark Outline vs ClassInfoType/MethodType/etc

Following the Scalameta principles, Rsc represents definition signatures with trees instead of dedicated data structures like in Scalac and Dotty. We have found that this design decision simplifies the compiler, but we also want to understand whether it has any negative performance implications.

After doing preliminary experimentation with the "Benchmark architectural change XXX" tickets, we found out that performance effects of many of these changes lie within the range of run-to-run variance of our current benchmark suite. This makes it hard to form an informed judgement about these changes, so we decided to postpone further experiments until we implement support for more language features and make our benchmark suite more diverse.

repo: twitter/reasonable-scala


text:
Need to add a tag 2.1.2

Need a tag 2.1.2 here:
https://github.com/twitter/twemoji/releases
This is apropos https://github.com/cdnjs/cdnjs/issues/8813

Done.

Possible to do the same for 2.1.4? Thanks.

tagged also 2.1.5

repo: twitter/twemoji


text:
Clean python example of filtered stream

Make it more readable and remove unnecessary parameters

I have read the CLA Document and I hereby sign the CLA

recheck

authors: andypiper jonirap


text:
Map does not load, how would I find out the issue?

I am trying to make a test map for CardinalPGM.  When I make a basic XML file I can't seem to get the thing to load.  The XML file can be found here.  The map does not load and thus can't be selected ingame.
I don't know if you allow feature requests, but I think you should add something to the terminal that could highlight or show which lines the program can't interpret correctly that causes the map to fail loading.  It would make it much more handy to find out what's wrong.

It is already a feature. Enable showMapLoadErrors in options.txt.

@CoWinkKeyDinkInc line 87 you never get to close box

@SungMatt I didn't know that, thank you!!
@Pablete1234 I meant to complete that, thanks for pointing that out.

authors: CoWinkKeyDinkInc Pablete1234 SungMatt

repo: twizmwazin/CardinalPGM


text:
Does it recalculate efficiently on frequent DF appends?

Many indicator can be efficiently recalculated without calculating all previous ohlcv records. it hits the performance.
Usual use cases -  live OHLCV stream. Also when appending - there is mismatch column problem.
I didn't found any interface for that that under the hood (talib).
Maybe someone has some idea for that? or am i missing something and it already calculates latest ohlcv indicators without recalculating old one?

Hello @timabilov,

Many indicator can be efficiently recalculated without calculating all previous ohlcv records.

Which? Please be specific.

I didn't found any interface for that that under the hood (talib).

Know of other sources that do with relevant code?

Usual use cases - live OHLCV stream. Also when appending - there is mismatch column problem.

Do you have examples and reproducible code?

Maybe someone has some idea for that? or am i missing something and it already calculates latest ohlcv indicators without recalculating old one?

Pandas TA calculates the chosen indicators for the ohlcv DataFrame. It is just one component of a Trading Platform. It is the responsibility of the user to manage their own data pipeline including data acquisition, cleaning, feature generation (this package), post analysis, backtesting, , signal generation, visualization, forward testing, broker integration, portfolio management, order management and execution.
Furthermore, this has been somewhat discussed before. Please see Pinned Issue #87 How to utilize this Framework for live ticks for more information and other ideas.
Kind Regards,
KJ

Hi @twopirllc ,
Sorry for making all the things hard here.
Anyway i checked pinned issue and it seems there is no other way.
The point is - when we have a new tick, we append  this OHLCV record to DataFrame. Short example to clarify:
def update_ohlcv(klines: pd.DataFrame, row: list):
    index = kline_start_to_index(start=row[0]) # datetime index
    row = [float(cell) if cell else None for cell in row]
    row.extend((len(klines.columns) - len(row)) * [None]) #  HERE my bad i guess, cause new tick has no indicator  columns..
    klines.loc[index] = row
    indicatorize(klines) # klines.ta.macd and etc

    return klines.loc[index]

Each time when we append  one OHLCV to our klines(DataFrame) indicators should be recalculated for all DataFrame.
For example, considering only MA for now,  new MA value for new OHLCV record  can be calculated using previous OHLCV record's MA value( klines.loc[index -1] ).
Main question is - does underlying lib or pandas-ta consider previous value for any recurring indicator like MA, EMA and etc?
I can be wrong here, sorry. But if it is recalculated for whole records indeed, then i  am trying  to find more eloquent way to handle that situation.

Know of other sources that do with relevant code?

No actually, other than calculating all the things for myself which is not the right way when you handle finance, you know.
I hope that this clarifies all the things.

@timabilov,
Apologies for the delay in the reply. I wanted to dig around a little more and check some additional sources.

Sorry for making all the things hard here.

Comes with the territory. 😆

Main question is - does underlying lib or pandas-ta consider(not calculate whole df records) previous value for any recurring indicator like MA, EMA and etc?

In short, no it does not because you still have to manage the process of calculation and appending to the prior DataFrame; as you have coded. This is not a self aware DataFrame and has no insight when data arrives. Nor I have seen any TA library or package that does so yet.
What you want are Incremental Computations (such as mean, variance, et al....) and they are small subset of indicators. Unfortunately, I have yet to find a list of equations that support Incremental Computations. However if you could help me identify and source these particular equations, I think I can modify those existing indicators to process only two rows to speed up the computations for this case.
However, there are many indicators where this is just not possible. Some of which require rather complex logic just to determine it's value like psar or supertrend et al.
Also you might know of Jane Street (Quantitative Trading Firm), they have released some OCaml Open Source and an Incremental Library that maybe useful for you if you are somewhat familiar with OCaml or Functional Programming.
In regards to managing the process of a Trading Platform, I also recommend reading TradingView's Execution model of Pine scripts to understand how their approach. However other well known platforms (IB, ToS, TradeStation, et al) are more black box in their management.

I can be wrong here, sorry. But if it is recalculated for whole records indeed, then i am trying to find more eloquent way to handle that situation.

We all want fast calculations. You are preaching to the choir here. Not only is this library has few dependencies, is comprehensive and accurate, but it's not that slow. Here are some run time stats on processing on an Apple Macbook Pro M1:

Of course, your use case will vary and not everyone will be running ALL the indicators to generate features and determining trade signals.
Out of curiosity, what are you developing and for what exchanges and assets?
Hope this helps.
Kind Regards,
KJ

Thank you for really detailed answer!
Yes, we can call that as incremental computation for some specific recurrent indicators.
My tests are on mac M1 is also pretty well, but that is no go,  considering low cost production VPS or whatever.
It is just and auto trader which should be easy-scaled as SaaS, and that is very scary, although  i know that there are tons of workarounds like streaming all indicators from central server, but anyways. Just wanted to check.
It is still ok for me of course. That's lib is really awesome! Thank you
All of the problems are still nothing compared to the "working" autotrader, you know

Hello @timabilov,

Thank you for really detailed answer!

👍🏼 I'm still learning new things also. 😓

My tests are on mac M1 is also pretty well, but that is no go, considering low cost production VPS or whatever.

Understandable.

It is just and auto trader which should be easy-scaled as SaaS, and that is very scary, although i know that there are tons of workarounds like streaming all indicators from central server, but anyways. Just wanted to check.

Yeah. Welcome to the club! 😎  There are already existing open and closed source platforms and SaaS implementations in the wild. Trying to build my own in my spare time also.
You may be interested in this Algo Trading Summit happening on July 15th; check the link there may still be free tickets left.

It is still ok for me of course. That's lib is really awesome! Thank you

I hear ya. In between Issues, I have been trying to increase it's speed, reduce the ETL process and make it easy to Backtest with vectorbt.

For a more detailed version, check out the development branch Example Notebook

All of the problems are still nothing compared to the "working" autotrader, you know

👍🏼
KJ

I know this is closed, I just wanted to mention that I stumbled upon https://github.com/nardew/talipp which is incrementally updating indicators. Maybe that could help with this problem?

authors: mraspaud timabilov twopirllc

repo: twopirllc/pandas-ta


text:
Document version matching for dependencies

Since project hasn't been updated to latest production tools, downloading sitrep and trying to run it using XCode 12.3 onwards, the reporting silently fails.
Upon further investigation running tests in the package reveals SwiftSintax fails due missmatching swift-tools version incompatibility. This causes following false positives like these.
For now it'd be better to be explicit on this version incompatibility for this dependency in the documentation rather than to advance into updating tools + dependencies and creating a new release for the tool.

Thank you!

Thank you!

authors: rigovides twostraws

repo: twostraws/Sitrep


text:
🛑 ha is down

In 6ea2d03, ha ($HA_SERVER) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ha is back up in a5408b1 after 45 minutes.


text:
Release with new version bounds?

Could we get a point release?

Sorry, I've been meaning to get back to work on this, but at this point I think I'm kidding myself. We don't use Haskell at work, and my time away from work has been taken up by other things. If someone would like to take over the project I'd be happy to transfer ownership.

@tylerholien I use Haskell and this package at work! I'd be interested in taking ownership given I've spent enough time learning from it (and thanks for that too! :). However, I have no experience with maintaining on Hackage. Although the documentation makes it seem rather straight forward.

@adamflott Oh no, I hope you didn't learn too much from my crappy code! Hackage is pretty easy. Sometimes the docs don't get linked so you have to upload them separately, but it's possible that's fixed by now.

Just the opposite! Yes they fixed the doc building issue a few months ago. If you're ok with transferring my Hackage username is adamflott

You're added!

@adamflott

Whoops, didn't mean to hit the close button.

@adamflott I also added you to this repo. Feel free to keep using it as the main repo or update the readme to point to a clone or whatever you want!

@tylerholien Awesome. Thanks! I'll start taking action on this soon.

Version 0.5.0.2 uploaded to Hackage with bumped bounds.

authors: TomMD adamflott tylerholien

repo: tylerholien/milena


text:
Add List.insert and upgrade Immutable.js

This commit upgrades Immutable to 3.8.1, and sets it to >= in
package.json.
It also adds a List.insert() method to typed-immutable lists.
FIxes #20.

I think we have consensus, but leaving this for a day or two, just in case.

repo: typed-immutable/typed-immutable


text:
Support Google Fonts CSS API v2

Google released a new version of their API https://developers.google.com/fonts/docs/css2. On the same guides page, they link to this project as the official web font loader. As far as I can tell, it won't work with the new APIs which means variable fonts from Google fonts are not supported.
It would be great if the project would also support version 2, since the official Google guides link to this repo as the recommended webfont loader.

I ran into the same problem. You can change the API URL it's using by adding:
WebFont.load({
    google: {
      api: 'https://fonts.googleapis.com/css2',
      families: ['Droid Sans', 'Droid Serif']
    }

Tried upgrading to the v.2 right now and it's SO slow! 😱

It's not work for me, if I want to use two fonts with special font weight and display.
Certain URL is: https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;700;900&family=Poppins:wght@400;700&display=swap
Test1:
WebFont.load({
	google: {
	    api: 'https://fonts.googleapis.com/css2',
	    families: ['Noto+Sans+TC:wght@400;700;900','Poppins:wght@400;700&display=swap']
	}
});

Get URL: https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;700;900&Poppins:wght@400;700&display=swap
Test2:
WebFont.load({
	google: {
	    api: 'https://fonts.googleapis.com/css2',
	    families: ['Noto+Sans+TC:wght@400;700;900&family=Poppins:wght@400;700&display=swap']
	}
});

Get URL: https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;700;900&family=Poppins&subset=wght@400;700&display=swap
How to get certain URL?

@ReginnaChao you shouldn't definitely specify the families in the same way you specify the url of the CSS. In theory the library should generate the url under the hood.

I also have issues with v.1 but v.2 doesn't seem to be fully supported. I nudged the team to try to find out more. It sucks there isn't a properly supported alternative.

I ran into the same problem. You can change the API URL it's using by adding:
WebFont.load({
    google: {
      api: 'https://fonts.googleapis.com/css2',
      families: ['Droid Sans', 'Droid Serif']
    }
});

I'm also facing the same issue. It won't work for me. It returns 400 from webfont.js while providing api paramerter with new endpoint for version 2 of google fonts api.

@phox4ever's solution should work where you are only requesting a single font, however it won't work where you need multiple fonts. Basically, the seperating syntax has changed so where it was family=font1|font2 it's now family=font1&family=font2.
I've created a PR (#437) that resolves the above by letting you specify the API version you are targeting, as well as incorporating other google-only features such as display and effects.
Check out the updated readme to see how the new API works. You can hotlink the file directly from github: https://cdn.jsdelivr.net/gh/theprojectsomething/webfontloader@feature/google-fonts-v2/webfontloader.js ... tho I would recommend hosting it yourself (or pinning the exact commit) so I can't pull a swifty on you.

@theprojectsomething the last merged PR was more than 3 years ago. What are the chances this is gonna land?

@nuthinking 😀 the project does look a little bit abandoned .. I figure enough people are using it in production to at least warrant a workaround!

@theprojectsomething your PR is great, maybe you should maintain a fork? 🤔

You can still construct the v2 API URL yourself and pass it to the urls property. It's more manual work but depending on your situation it might still be the best option:
// Example href val: https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,400;0,500;1,400
const href = `https://fonts.googleapis.com/css2?${families.join('&')}&display=fallback`;

return {
	urls: [href],
	preloads: [{
		as: 'style',
		href,
	}],
};

@theprojectsomething
You are a genius, do you know how to resolve this problem? Ensure text remains visible during webfont load

@somratpro sorry not sure that's related to this issue. tho my guess is that what you're asking for is likely the default behaviour. If you search FOUT (flash of unstyled text) in the gh issues you'll probably find some good info

Thank you @theprojectsomething!
One remaining question: Are you planning to upgrade the v2 API so that you can also just pass a plain object with all the settings like font weight, style etc?
I guess so, ticket still open and v1 seems to have the URL generation completely under the hood (quick look).

Use https://developer.mozilla.org/en-US/docs/Web/API/CSS_Font_Loading_API instead

@davelab6 are you suggesting using the CSS Font Loading API in conjunction with Google Fonts Developer API (to get the URL of the files to load)? Any examples we could look at? I can see on GitHub code referencing Google static font files directly without Google Fonts Dev API, is this safe? Thanks! 🙏

authors: ReginnaChao akshaybosamiya baderj cartok davelab6 lokesh-squareup nuthinking phox4ever somratpro theprojectsomething

repo: typekit/webfontloader


text:
Blank images on https localhost

Running tlapse --every 45s --directory ./screens -- https://localhost:8080 gives:
Screenshots directory: ./screens
Interval: 45s
10:42:32 ✔ Generated 1 screenshot from 1 url and 1 size

And a 6kb blank image:

Me too. I'm also using VueJS.

It may be work better with v1.0.0, as tlapse now uses Puppeteer instead of PhantomJS (see @gasp PR https://github.com/typicode/tlapse/pull/15).

authors: Mehdi-Hp typicode wiinci

repo: typicode/tlapse


text:
🛑 (dev) Tyre Pharmacy is down

In cfb8328, (dev) Tyre Pharmacy ($DEVELOPMENT_TYREPHARM/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: (dev) Tyre Pharmacy is back up in 8254a4e.

repo: tyrepharm/upptime-test


text:
🛑 (dev) Tyre Pharmacy is down

In ceff13e, (dev) Tyre Pharmacy ($DEVELOPMENT_TYREPHARM/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: (dev) Tyre Pharmacy is back up in d0a81a5.


text:
how to get 5 points landmarks

I have run your android dlib in my project successfully.  Thank you for your great work!
But I do not know how to get 5 points landmarks instead of 68 points. Is there a way to do this ?

I got the answer by myself.
What needs to do is just substitute the 68-point model file with the 5-point one

how to rotate the floating camera window

repo: tzutalin/dlib-android-app


text:
Dark mode

Implement a "dark" appearance:

[ ] Match the system appearance via the @media-query;
[ ] Maybe also add an option: system/light/dark.

Seems like you use tailwind,
I'm not familiar with it but doesn't it have a dark tag for auto dark mode based on media-query?
I might be wrong with that though

Looking at the docs, you have to enable the module first 🙃.

Indeed; though after enabling it in either media or class mode, the dark appearance itself generally has to be implemented manually:

By adding relevant classes with dark: (like dark:bg-gray-900).
I'm also using tailwindlabs/tailwindcss-typography, which would need its colors changed as well and will likely require customizing it, maybe like described in https://github.com/tailwindlabs/tailwindcss-typography/issues/69#issuecomment-752946920 or other comments in that issue.

However, in that issue I've also stumbled upon jjranalli/nightwind, which seems like it would do all the re-coloring automagically and seems to use the class mode. Maybe it would be easier to use it and then tweak colors in individual cases if needed (which it also supports). It also includes helper functions for switching the mode, which would probably need to be used like in yew's js_callback example (since the app uses Rust/WASM and the helper functions are in JavaScript).
Though the helper functions don't seem to support resetting the preference to "system" mode, which I think would be beneficial to have:

https://github.com/jjranalli/nightwind/issues/31


text:
legit "uproxy contact" was showing as "Non uproxy contact" from windows OS

attaching a screenshot it explains.

this has been resolved

repo: uProxy/uproxy


text:
Create full uProxy integration test

Create an integration test that goes through the full uProxy experience.  It should

Launch 2 instances of uProxy
Sign into each instance with a different Google account
Request and grant permission
Start proxying, make a request and verify that it goes through the proxy
Stop proxying, make a request and verify that it doesn't go through the proxy
Start proxy a 2nd time, and make sure the proxy works again (to check proper cleanup)

Some additional things that might be good to test if possible:

Settings, User + Instance/Permissions info are loaded from storage
Error cases: proxy fails to start, or proxy starts and then breaks
Logout
Test in multiple environments if possible: Chrome, Firefox, Node (when ready)

would be great to have test for when a uProxy server is proxying for more than 1 client.

@salomegeo  ping...? :)

This landed in #801

Can we get a little more detail on this?  How do we run these tests?  Do
they run automatically on shippable or travis or something else?  They
don't seem to run in "grunt test", so what command should we use?
On Tue, Apr 21, 2015 at 11:25 AM, iislucas notifications@github.com wrote:

Closed #771 https://github.com/uProxy/uproxy/issues/771.
—
Reply to this email directly or view it on GitHub
https://github.com/uProxy/uproxy/issues/771#event-286329776.

@salomegeo Can you add description to the readme for running it?

Closing this - we can now run tests by doing grunt integration_test

authors: dborkan iislucas


text:
rowSpan Property

I needed to add "rowSpan" to my  component and it didn't work. Then I looked over the code and saw that the "colSpan" attribute is being considered and when this is sent to the component all the other props are also sent to the html  component.
This means that if I use [...]	 the "rowSpan" attribute will get ignored but if I use something like [...]	 my "rowSpan" attribute will be passed to the html  component and I will get my desired functionality.
Can you please pass the props to the html  component when there is no "colSpan" involved?
class TdInner extends React.Component {
  render() {
    if (this.props.colSpan) {
      return
    }
    const { headers, children, columnKey } = this.props
    const classes = (this.props.className || '') + ' pivoted'
    return (
       {/*<<=== Here I added the props */}

{headers[columnKey]}

        {children ||

}

    )
  }
}

Hey @dragos-rosca! Thanks for bringing this issue to light. Would you like to contribute a fix via pull request?

Hello, thank you for the opportunity but I think you guys will do a better job.
Like there's a bug in my comment that overrides the "className" property in the  excluding your "pivoted" class.

I created a fork and I will add the code the best I can. See you at pull request!

fixed with #116

Thank you @dragos-rosca!

authors: coston dragos-rosca

repo: ua-oira/react-super-responsive-table


text:
Update specs2-core to 4.8.1

Updates org.specs2:specs2-core from 4.5.1 to 4.8.1.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.specs2", artifactId = "specs2-core" } ]

labels: test-library-update, semver-minor

Codecov Report

Merging #69 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #69   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           6      6
  Lines          84     84
  Branches        2      2
=====================================
  Hits           84     84

Continue to review full report at Codecov.

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

authors: codecov-io scala-steward

repo: ua-parser/uap-scala

license: WTFPL


text:
🛑 UA Reader DE / EN is down

In 9dd37ee, UA Reader DE / EN (https://anonyme-unterverdiener.de/files/UA_Reader_new.pdf) was down:

HTTP code: 0
Response time: 0 ms

Resolved: UA Reader DE / EN is back up in a950669 after 5 minutes.

repo: uadeutschland/upptime-uadeutschland


text:
Model parseXXX methods of boxed primitives as having @NonNull parameter

E.g., the parameter of Long.parseLong(String) should not be null or a NumberFormatException gets thrown. We should model all the parseXXX methods of all the java.lang boxed primitive types.
Following methods are added

parseInt 2. parseFloat 3. parseShort 4. parseLong 5. parseDouble 6. parseByte 7. parseBoolean

Fixes #269
Added unit tests.

Thanks @shas19!

repo: uber/NullAway


text:
testing bug bounty - please ignore..... dfkmsn

testing bug bounty - please ignore..... dfkmsn

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

authors: CLAassistant sharlilit


text:
Fix buffer warnings

For #2892

Background

Change List

Coverage increased (+0.01%) to 62.483% when pulling 665658bc376c2636d139bcc75ad72a4a4b468bbe on ib/fix-buffer-warnings into 13bf96dfbd9ecc020321a4b4a2a2bb1850d645cd on master.

Coverage increased (+0.01%) to 62.483% when pulling 665658bc376c2636d139bcc75ad72a4a4b468bbe on ib/fix-buffer-warnings into 13bf96dfbd9ecc020321a4b4a2a2bb1850d645cd on master.

authors: coveralls ibgreen


text:
Skip existing errors in lint result file

@sectioneight @Ignas @kageiit

Coverage increased (+0.1%) to 91.477% when pulling 66778e457fa519c289efa139b4dcba3938e2e316 on jx_spongy_eland_json_exception into 5a3c257bdc32c852def0341affcb7bcac1230908 on master.

This PR is to essentially allow the lint processor to continue processing other results even if we encounter one malformed result in the lint results file.

authors: coveralls jjx

repo: uber/phabricator-jenkins-plugin


text:
Pyflame always runs as if I had passed --threads

Using pyflame 1.3.1 with Python 2.7.12 on Ubuntu 16.04 pyflame always returns output as if I had passed the --threads option.  This makes it hard to get a useful profile of the running thread.  Here is some sample code that should illustrate the problem:
import threading, time

def main():
    busyThread = threading.Thread(target=busy)
    busyThread.start()
    while True:
        time.sleep(1000)

def busy():
    number = 0
    while True:
        number += 1

if __name__ == '__main__':
    main()

Here is some sample output
sudo pyflame -s 0 PID results in:
profilable.py::15;profilable.py:main:7 1
/usr/lib/python2.7/threading.py:__bootstrap:774;/usr/lib/python2.7/threading.py:__bootstrap_inner:801;/usr/lib/python2.7/threading.py:run:754;profilable.py:busy:11 1
Why would -s 0 without the --threads option return with two samples?
sudo pyflame -s 0 --threads PID results in:
profilable.py::15;profilable.py:main:7 1
/usr/lib/python2.7/threading.py:__bootstrap:774;/usr/lib/python2.7/threading.py:__bootstrap_inner:801;/usr/lib/python2.7/threading.py:run:754;profilable.py:busy:12 1
This is as expected but it is identical to running pyflame without --threads
sudo pyflame -s 30 PID results in:
profilable.py::15;profilable.py:main:7 24549
/usr/lib/python2.7/threading.py:__bootstrap:774;/usr/lib/python2.7/threading.py:__bootstrap_inner:801;/usr/lib/python2.7/threading.py:run:754;profilable.py:busy:12 24548
/usr/lib/python2.7/threading.py:__bootstrap:774;/usr/lib/python2.7/threading.py:__bootstrap_inner:801;/usr/lib/python2.7/threading.py:run:754;profilable.py:busy:11 1
The total number of samples * the default sampling period exceeds the time spent profiling.  Also it seems unlikely sampling the active thread would end up in the sleeping thread so often
sudo pyflame -s 30 --threads PID results in:
profilable.py::15;profilable.py:main:7 25126
/usr/lib/python2.7/threading.py:__bootstrap:774;/usr/lib/python2.7/threading.py:__bootstrap_inner:801;/usr/lib/python2.7/threading.py:run:754;profilable.py:busy:11 12537
/usr/lib/python2.7/threading.py:__bootstrap:774;/usr/lib/python2.7/threading.py:__bootstrap_inner:801;/usr/lib/python2.7/threading.py:run:754;profilable.py:busy:12 12589
This is nearly identical to running pyflame without the --threads option

I see what's happened here. The thread walking logic in frob.cc doesn't respect the enable_threads_ setting - so as long as something holds the GIL, it'll still walk all threads. I'll take a look at this when I get chance.

Rerunning my tests with your changes seems to provide much more sensible results.  Thanks!

authors: jamespic josephaltmaier

repo: uber/pyflame


text:
Update setup.py classifiers.

Resolves #77.

@blampe @breerly @junchaowu

lgtm

good catch - :shipit:

authors: abhinav blampe breerly

repo: uber/thriftrw-python


text:
RHBPMS-4220: Added RoleRegistry and registered principals that come from Keycloak remote logins as roles.

Fixed issue that causing the security principals not being added as roles in the current user instance, so remote login (eg: keycloak) were failing due to authorizations failed, as users had no roles. In order to do this I've backported from master branch the RoleRegistry necessary stuff.
See https://issues.jboss.org/browse/RHBPMS-4220
Please @dgutierr, as commented with you this fix, can you please verify? Thanks!

jenkins rebuild this ( got crazy with some signature check failed on an artifact... :)

Hi @Roger,
The implementation looks great!
Aside from that, I think tests should be added for the JAASAuthenticacion and GroupAdapterAuthorizationSource classes in order to guarantee that the retrieval of groups & roles has proper coverage.

Hi @dgutierr , absolutely agree :) Added new commit with the tests for it! Added new commit with test as well for https://github.com/uberfire/uberfire-extensions/pull/301. Thanks!

@romartin I think the build is failing because in 0.9.x the new java 7+ nio api is not available, as it is on master. That explains why you get these errors in the log:
08:53:47 [ERROR] /home/jenkins/workspace/uberfire-pullrequests-0.9.x-and-older/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/security/RoleLoader.java:76: Undefined reference: java.io.File java.nio.file.Path.toFile()
08:53:47 [ERROR] /home/jenkins/workspace/uberfire-pullrequests-0.9.x-and-older/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/security/WebAppSettings.java:32: Undefined reference: java.nio.file.FileSystem java.nio.file.FileSystems.getDefault()
08:53:47 [ERROR] /home/jenkins/workspace/uberfire-pullrequests-0.9.x-and-older/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/security/WebAppSettings.java:32: Undefined reference: String java.nio.file.FileSystem.getSeparator()
08:53:48 [ERROR] /home/jenkins/workspace/uberfire-pullrequests-0.9.x-and-older/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/security/WebAppSettings.java:89: Undefined reference: java.nio.file.Path java.nio.file.Paths.get(String, String[])
08:53:48 [INFO]
The solution is to use the legacy UF NIO api backport.

@dgutierr, @romartin you should be able to reproduce the same fail when using the full profile (even when running with JDK 8). So something like mvn clean install -Dfull (which will add the animal-sniffer execution into the build)

ahh ok thanks for the update @psiroky !! I didnt realized about this, trying to fix now. Thanks!

Hi @dgutierr , @psiroky - thanks for the updates!
Fixed the build issue and added a  commit again. Checked other dependant PRs as well after this fix. Hope jenkins will not complain now :)

yeahh passed :)

+1

This appears to have broken tests in kie-wb-common and drools-wb:-
https://kie-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/job/drools-wb-pullrequests-6.x/101/testReport/junit/org.drools.workbench.jcr2vfsmigration/MortgagesRepoImportTest/testImportMortgagesRepo/
https://kie-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/job/kie-wb-common-pullrequests-6.x/165/testReport/org.kie.workbench.common.screens.explorer.backend.server/ExplorerServiceImplTest/explorerServiceShouldBeADependentBean/

@manstis @romartin @dgutierr I will revert both commits involved.

All three commits that is.

authors: csadilek dgutierr manstis psiroky romartin

repo: uberfire/uberfire


text:
Metavix/changing readme

@woakas Readme changer:

Added an example with lat and lng
Deleted in required items: Adafruit library

@woakas Add it to add examples to the readme

repo: ubidots/Ubidots-FONA


text:
feat(Geosuggest): Add debounce prop, default to 250ms

I'm implementing debounce in a similar manner to Issue #131, with a default delay of 250ms.  The current implementation is actually unusable on IE11 because the cost in time to re-render on every keystroke causes the browser to eat keystrokes while you are typing.  Adding a debounce makes the component at least functional.

Thanks for the PR! But I still think it makes sense to have this delay without a configuration. Do you mind to remove the prop from the component but keep the delay?

Rebased, and moved to the specific lodash package, thanks for the pointer!
I'll still argue for having a parameter available to change the debounce time, just because individual users may have different needs.  Some may be willing to sacrifice query volume for a faster response time, while others might want to minimize the number of queries made.  I'm happy to rename the parameter to be something clearer to an end user, like queryDelay.
Also, for IE11 users (a minority, I admit) the default delay is still too short to prevent buggy behavior for them, and I don't want the default to have to be something like 500ms.  I'll continue to work on trying to improve the performance in IE11 though.

I think queryDelay is nicer. Can you update? Thanks!  :)

Closing this in favor of #163 because this PR was coming off my master branch.

Seems like this queryDelay of 250ms, causes android browsers to sometimes trigger onChange event, after the suggest has already been selected. to reproduce:

open the demo page on an android browser
start typing in this address: 56 Varet Street, Brooklyn
select the first result
you will see that the correct geosuggest is being selected
you will also see that the onChange event is being triggered once again, and basically invalidates your previous suggestion, and keeps the suggests dropdown open

I couldn't find the exact cause for that issue - it's very specific to android browser, and to overcome it, I changed the queryDelay to 0...
would love to hear your input :)
Thanks

authors: dimafeldman lsanwick ro-ka

repo: ubilabs/react-geosuggest


text:
Draft status missing in MergeRequest class

Closes #552

Can you inidicate that the WorkInProgress field is deprecated?
[Obsolete("Deprecated by GitLab. Use " + nameof(Draft) + " instead")]

authors: louis-z phdesroUbi

repo: ubisoft/NGitLab


text:
Build on 1.19 is failing

@freeekanayaka the dqlite patch is failing on the 1.19 branch so the releases there are blocked. Thanks.
2020-04-29 at 23:27:22 | INFO + cd /root/parts/microk8s/install/go/src/github.com/kubernetes/kubernetes
2020-04-29 at 23:27:22 | INFO + git checkout v1.19.0-alpha.2
2020-04-29 at 23:27:23 | INFO Note: checking out 'v1.19.0-alpha.2'.
2020-04-29 at 23:27:23 | INFO
2020-04-29 at 23:27:23 | INFO You are in 'detached HEAD' state. You can look around, make experimental
2020-04-29 at 23:27:23 | INFO changes and commit them, and you can discard any commits you make in this
2020-04-29 at 23:27:23 | INFO state without impacting any branches by performing another checkout.
2020-04-29 at 23:27:23 | INFO
2020-04-29 at 23:27:23 | INFO If you want to create a new branch to retain commits you create, you may
2020-04-29 at 23:27:23 | INFO do so (now or later) by using -b with the checkout command again. Example:
2020-04-29 at 23:27:23 | INFO
2020-04-29 at 23:27:23 | INFO git checkout -b <new-branch-name>
2020-04-29 at 23:27:23 | INFO
2020-04-29 at 23:27:23 | INFO HEAD is now at 57108f6... Merge pull request #90307 from liggitt/node-labels
2020-04-29 at 23:27:23 | INFO + git config user.email microk8s-builder-bot@ubuntu.com
2020-04-29 at 23:27:23 | INFO + git config user.name MicroK8s builder bot
2020-04-29 at 23:27:23 | INFO + echo Applying patch /root/project/build-scripts/patches/dqlite.patch
2020-04-29 at 23:27:23 | INFO Applying patch /root/project/build-scripts/patches/dqlite.patch
2020-04-29 at 23:27:23 | INFO + git am
2020-04-29 at 23:27:23 | INFO Applying: Rename flag set "etcd" to "storage"
2020-04-29 at 23:27:23 | INFO Applying: Add "dqlite" to available storage type names
2020-04-29 at 23:27:23 | INFO error: patch failed: staging/src/k8s.io/apiserver/pkg/storage/storagebackend/config.go:25
2020-04-29 at 23:27:23 | INFO error: staging/src/k8s.io/apiserver/pkg/storage/storagebackend/config.go: patch does not apply
2020-04-29 at 23:27:23 | INFO Patch failed at 0002 Add "dqlite" to available storage type names
2020-04-29 at 23:27:23 | INFO The copy of the patch that failed is found in: .git/rebase-apply/patch
2020-04-29 at 23:27:23 | INFO When you have resolved this problem, run "git am --continue".
2020-04-29 at 23:27:23 | INFO If you prefer to skip this patch, run "git am --skip" instead.
2020-04-29 at 23:27:23 | INFO To restore the original branch and stop patching, run "git am --abort".

It's probably easy to fix, but if I do it now and push to the canonical/kubernetes-dqlite master branch, then it won't apply to 1.18 cleanly anymore. Is that fine or do we need to arrange a way to support multiple kubernetes versions at the same time? Probably via separate branches or tags.

Would it be possible to reuse the branches of the upstream kubernetes in our kubernete-dqlite fork?
I also need to think how the pre-stable releases will be build with this variation of the patch.

Sure, we can have as many branches as we want with whatever content that we want and any tags we want on them.
Right now we have just one branch (master) that is equivalent to the latest k8s release (currently v1.18.0) plus our patch. We don't use tags at the moment.
Please just let me know what branches and tags you'd like to have, and what they should be based on with respect to upstream branches and tags.

I think we should keep the branches available in K8s upstream. As soon as a stable release comes out we also freeze the dqlite patch, place it to the respective branch and leave it. We backport only bug fixes. Performance improvements and new features are made available in the master branch and released on the latest MicroK8s track. This is how MicroK8s releases work so my suggestion is to match that.
The patch we have right now should be applicable to the release-1.18 (https://github.com/kubernetes/kubernetes/tree/release-1.18). We should also make sure we have a patch against the master branch where the pre-stable releases come from.

I've updated the canonical/kubernetes-dqlite repository, so now we have 2 branches:

master: this is the current kubernetes master (as of today, hash 96e13de777a), plus dqlite patch
release-1.18: this is the current kubernetes release-1.18 (as of today, hash 1666bcfa4d3) plus dqlite patch

These branches will need to be updated by hand and rebased when upstream kubernetes branches move forward.
Please let me know if this matches what you had in mind.
With respect to updating the branches, we could also decide that you can do it yourself at any time (you just have to rebase the branch on the upstream one). If you hit conflicts (which should basically never happen for release-X branches, and only relatively rarely happen for the master branch) you can ping me and I'll resolve them for you.

Sounds great. Thank you @freeekanayaka. I will start soon the work on pre-stable builds.

I just tried to build microk8s on arm64 and it failed with I think the same error as reported in this issue:
+ go get -d github.com/kubernetes/kubernetes
package github.com/kubernetes/kubernetes: no Go files in /root/parts/microk8s/install/go/src/github.com/kubernetes/kubernetes
+ true
+ cd /root/parts/microk8s/install/go/src/github.com/kubernetes/kubernetes
+ git checkout v1.19.0
Note: checking out 'v1.19.0'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at e199641... Release commit for Kubernetes v1.19.0
+ git config user.email microk8s-builder-bot@ubuntu.com
+ git config user.name MicroK8s builder bot
+ PATCHES=patches
+ echo v1.19.0
+ grep -e beta -e rc -e alpha
+ echo Applying patch /root/project/build-scripts/patches/dqlite.patch
Applying patch /root/project/build-scripts/patches/dqlite.patch
+ git am
Applying: Rename flag set "etcd" to "storage"
.git/rebase-apply/patch:19402: trailing whitespace.
    means a work that combines Covered Software with other material, in
.git/rebase-apply/patch:32909: trailing whitespace.
    Machine byte order :
.git/rebase-apply/patch:32911: trailing whitespace.
    Int32 to Bytes :
.git/rebase-apply/patch:32912: trailing whitespace.
    0x12345678 to current endian :
.git/rebase-apply/patch:32914: trailing whitespace.
    0x12345678 to big endian :
error: patch failed: go.mod:103
error: go.mod: patch does not apply
error: patch failed: go.sum:77
error: go.sum: patch does not apply
error: patch failed: staging/src/k8s.io/apiserver/pkg/server/options/etcd.go:176
error: staging/src/k8s.io/apiserver/pkg/server/options/etcd.go: patch does not apply
error: patch failed: staging/src/k8s.io/apiserver/pkg/storage/storagebackend/config.go:25
error: staging/src/k8s.io/apiserver/pkg/storage/storagebackend/config.go: patch does not apply
Patch failed at 0001 Rename flag set "etcd" to "storage"
The copy of the patch that failed is found in: .git/rebase-apply/patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Failed to run 'override-build': Exit code was 128.
Run the same command again with --debug to shell into the environment if you wish to introspect this failure.

Hi @panlinux, I see you are using an older version snapcraft.yaml, could you update the MicroK8s snap code you have and retry?
Here is the build logs from LP builders building an ARM64 snap https://launchpadlibrarian.net/496325259/buildlog_snap_ubuntu_xenial_arm64_microk8s-1.19_BUILDING.txt.gz

Ah, indeed, I was using my branch based on old master 500e5f48f1080cae8aab79619c8d7ae16d4111ca. Let me update

That worked, thanks!

authors: freeekanayaka ktsakalozos panlinux


text:
Add Cuberite - A performant Mincraft server written in C++

This branch adds Cuberite as a subproject.  Cuberite is a Minecraft server written in C++ and released under the terms of the Apache 2.0 license.
This recipe builds Cuberite from git HEAD and adds a wrapper to set up the working directory before spawning the server. Cuberite is relocatable and uses the current working directory for its data, so multiple instances can be run on the same server. A possible improvement to the packaging would be to enable this via the system start-up scripts, something akin to the old network-interface or lxc-instance upstart scripts, or the current lxc-containers systemd unit
Currently requires devmode due to a call to fchown in the statically-linked sqlite: when running confined the process gets killed and I end up with Cuberite <defunct> in the process list, and Cuberite will not TCP ACK incoming TCP SYN packets.

[x]   General Comment
 Nice work, do you you think you can update README.md in the top-level directory and add a README.md in this directory based on ./snap-template/README.md?
 Done and done. Also stripped out a couple of unnecessary directories.
[x]   File: cuberite/snapcraft.yaml:L28-37
 These are the libjsoncpp headers, which are the only thing that gets installed through make install. So they shouldn't be shipped as part of the package.

Nice work, do you you think you can update README.md in the top-level directory and add a README.md in this directory based on ./snap-template/README.md?

Done and done. Also stripped out a couple of unnecessary directories.

:+1:

:shipit:

authors: dholbach jamestait

repo: ubuntu/snappy-playpen


text:
Group Emails

Null assignments are showing up

This was fixed in 92e548b24406c2d92d8b370a74ff97f5095d9ff1

repo: ucam-cl-dtg/isaac-api


text:
Elevate to teacher fails first time

From the admin/usermanager page, you find a user, then click the right user to select, but clicking the "Elevate to" button does nothing. From memory, I believe this is an issue that has previously been found and fixed, reappeared and fixed again. (I cannot find the issue in github though; it's an app issue rather than a content one I figure.)
Refreshing the page then pasting the user name in again, search again, click again is still a usable work-around.
I'm using Win 10 on dell i7 laptop, chrome v 49.0.2623.112 m

This is a known bug, and I'll have a look into fixing it again - but Alistair looked into it and found it very tricky. It's not our code that the problem lies in, but some that we use from outside I think. I suggest clicking the button before doing anything, and refreshing the page. This will always ensure it works; otherwise sometimes it will work and sometimes it will not.

This was fixed at the same time as #685 in https://github.com/ucam-cl-dtg/isaac-app/commit/bbeee77de2743c18badd12501eb0e409f53c33a2

repo: ucam-cl-dtg/isaac-app


text:
some training question

Hi！I'm sorry to disturb you!
In your paper, you used the coco dataset to pretrain and SM to the tinyperson dataset. How can I get the coco pretrained weight of my own dataset? And I still don't know how to use my own dataset to train?
I‘m looking forward to your reply! Thank you!

there are some steps you may need:

turn the annotations of your dataset to COCO format;
change config file like config file in this directory, you must change
DATALOADER.SCALE_MATCH.TARGET_ANNO_FILE
if you use MSM(monotonicity scale match), you may need instances_simple_merge2014.json, and change DATALOADER.SCALE_MATCH. SOURCE_ANNO_FILE in config file.
and you may need change lr policy in config file adapted for your dataset.
train to get your pretrain weight.

that's may be all thing I can consider so far, if you have any other problem, please tell us, and we will try to help.
And For more, we are consider to add an example that train on other dataset with scale match the next two days. which may can help you.

Thank you very much. I think it will help me a lot!

repo: ucas-vg/TinyBenchmark


text:
API For Tagging Signals

Emits a Verilog (or other) mapping from tag to full hierarchical signal path. The intent is to allow people writing more traditional Verilog or SystemVerilog testbenches to better hook into Chisel DUTs.

Useful information we probably want to help people access via first class feature:

Hierarchical path of a wire, reg, instance, etc.
Width of a wire or reg
Module relative name (possible Module.signal or just signal)
Module name

3 and 4 would be useful for people who want to bind things to a given module (eg. SystemVerilog assertions).

One use case: my DUT has an AXI slave port, to which I've connected a third-party VIP AXI master driver, which is implemented as a UVM agent in SystemVerilog. My testbench has to configure this VIP by (among other things) telling it about the memory map: what address ranges it can access through this port.
I need to get this information from the design in Chisel and format it into the correct SystemVerilog function calls, which are specific to this brand of VIP.

Another (related) use case: this AXI VIP has a data integrity checker which checks that any value read through the port match the previous value written to that address. But this requires that the VIP have knowledge of the initial values in the memory, which (in a Chisel-generated memory with +define+RANDOMIZE_MEM_INIT) are unpredictable.
If I knew the hierarchical path to each memory that's accessible through this port, and the size & width of each, I could read those memories' contents right after reset, and feed that data into the VIP.

Use case: my DUT includes a CPU with many memories connected. I want to initialize these memories with a compiled program which the CPU will execute. Typically this is done by creating hex files and loading them via $readmemh in the testbench.
Given a DUT, I need a way to figure out the address map visible from the CPU, then create a process that can automatically create the appropriate hex files from a compiled ELF binary. Also need to create the testbench code that does the $readmemh of each of those files into each memory.
This may include knowledge of caches, in order to warmstart them with real data.

Thank you for the feedback and use cases, Scott. I'm trying to figure out what exactly the right amount of work for Chisel to do here. I see two main things that would be useful:

Emit a Verilog header with the String mapping to hierarchical path

Useful for simple Verilog testbenches
Could optionally provide local path so people could use this mechanism to emit simulation modules that they bind to the Chisel Module in question
Probably wouldn't work for advanced use cases like the ones @scottj97 provided

Emit a YAML or JSON with the mapping

Provides more flexibility to handle @scottj97's use cases above
Requires users with simple test cases to write a script to emit Verilog from the mapping

Perhaps the answer is a compromise: emit a mapping of the tags to hierarchical paths (and other information), but provide a script that converts the mapping to the simple use case Verilog header.

Use case: building third-party IP. Some third-party IP requires additional build steps to generate the configured design. If my Chisel design includes such third-party IP, I want to be able to detect this in the build process and run the appropriate steps. I could implement this by having the Chisel module that connects such IP provide an indicator in its JSON. It could also indicate any special licenses needed for simulation.

Use case: communicating simulation knobs to downstream tools. A testbench component with a plusarg-controlled knob can communicate its availability and purpose to downstream tools which then apply it as needed.


text:
Metrics Monitoring: A minimal viable product

This PR sets up the basic structure of monitoring and provide basic functionalities:

It exports query frontend metrics through a coupled node exporter.
It exports model container metrics (count, 3 types of latencies in seconds) through a node exporter in the same container but different python process.
It initiates a mechanism to spin up a prometheus monitor and update it when necessary.

RPC image needs to be rebuilt. A new frontend-exporter image is also created.
Full implementation available in commit messages.
[Simon Mo]

Can one of the admins verify this patch?

authors: AmplabJenkins simon-mo

repo: ucbrise/clipper


text:
Encryption chapter - Need to add big numbers calculator to brute force attacks section

Currently waiting on the calculator to be added to the new field guide.

closed for inactivity, if new information is provided a new issue can be created

authors: Heidirose eAlasdair

repo: uccser/cs-field-guide


text:
Test new scheme for file organization.

We are working a change to the current file structure
The most immediate benefit is a more simple method for users / developers / and applications to add new users to the system.  The new setup needs to be verified to work in the FIN setup.  I don't foresee any issues with this, but it's a big change on the experts-cdl side.

This issue also addresses #210 when implemented

repo: ucd-library/aggie-experts


text:
Notifications

Think about adding a list of transactions to the rejected/failed notification.
The pending approval notification uses the same model, so would need to avoid that for those.
Possibly list status, txn date, and description for each failure

Maybe instead of the txn date, pass the last modified date

repo: ucdavis/Sloth


text:
Jcs/fuzzy

Issue #4

@jSylvestre also make sure to link the related issue so it auto closes

authors: jSylvestre srkirkland

repo: ucdavis/finjector


text:
Now displaying (You) on the bill split screen

Now when you split a bill and select the members, your username will have a (You) after it for clarity.
Closes #139

Where exactly is the "you" supposed to be? While choosing what members, the user's own username isn't supposed to show up so I'm a bit confused

Where exactly is the "you" supposed to be? While choosing what members, the user's own username isn't supposed to show up so I'm a bit confused

Yeah, the user's own username doesn't show up there but once selecting the members when going to the page where you assign custom bill split amt, the user's own username has to show up so they can assign themselves an amount, so I added the (You) for clarity at that step.

The (You) is showing up for me, LGTM!


text:
电子表格2： 处理数据 > 拆分列

课程导航+地址
电子表格2： 处理数据 > 拆分列
截图

具体描述
后面音画不同步，所讲的是前 1 ，2 秒的画面

可能是时间轴，辛苦圆圆看一下~ @sylviasun916

已修改 感谢反馈！

authors: Kyliewang PoBlue sylviasun916

repo: udacity/band-issues-cn


text:
Análisis avaluos

Analizar los requisitos relacionados con el módulo de avalúos.
Criterios de aceptación

[ ] Identificar actividades a ser realizadas
[ ] Detectar si se deben alterar los esquemas y estructuras de datos actuales

El registro del avalúo consistirá de dos partes:

Detalles generales del avalúo: fecha de corte del avalúo, avaluador.
NOTA: Pendiente determinar datos adicionales
Lista de inmuebles a los que se registrará el avalúo: a cada uno se le registrará la nueva vida útil, valor en libros y valor residual, así como los valores del área construida.
NOTA: La edad del inmueble no se podrá editar: Ya fue registrada en el módulo de inmuebles
Pendiente determinar los diferentes "valores" a registrar y cuál corresponde al valor en libros.


text:
Ajuste de funcionamiento y estilos del microcliente de inscripción, sub modulo legalización (aspirante-admisiones)

Se requiere realizar el Ajuste de funcionamiento y estilos del microcliente de inscripción, sub módulos legalización (aspirante-admisiones), la issue debe cumplir con los requerimientos:
Sub Tareas

[ ]  Realizar el ajuste del micro cliente de inscripcion, sub módulos legalización (aspirante-admisiones) para el ajuste de estilos, traducción y botones de acciones, junto a la revisión y depuración de código y servicios, incluir puntos de color en las tablas para saber que registros estan activos o inactivos, igual que en proyecto curricular
[ ]  Ajuste de fondo para todo los mf para mejorar visualización de card
[ ]  Ajustes de gifs y color letra alert para todo los mf (de la tarea) para mejorar visualización

Criterios de aceptación

[ ]  Ajuste de estilos y servicios

Requerimientos
No aplica
Definition of Ready - DoR

[x] Está refinada y estimada en puntos de historia por el equipo.
[x] Incluye la descripción y criterios de aceptación, con el detalle funcional y especificaciones técnicas, de forma entendible por cualquier miembro del equipo.
[x] No tiene bloqueos que impidan su ejecución.
[x] Las dependencias están identificadas y resueltas.
[x] Puede ser probada dentro del Sprint.

Definition of Done - DoD - Desarrollo

[ ] Desarrollo en local.
[ ] Push en Feature.
[ ] Pruebas locales (funcionales).
[ ] PR a Develop.
[ ] Criterios de aceptación cumplidos.
[ ] Documentación de issue realizada.
[ ] Aprobada por SM/Líder técnico.

Pantalla de legalización matricula
la pantalla cuenta con una tabla que no cumple con los estilos actuales
Antes:

Después:
Tabla legalizacion matricula despues.webm

authors: andresFLZ brayaned