[Feature] Crest API

Will the CREST API be implemented?  Mainly so we can get rid of the IGB and use out of game browser to track our in game movements.

None of the required headers that you receive from using the IGB have been implemented in CREST yet.
The only information you can receive is publicData, in which you currently only find characterID and characterName, nothing we actually really need to make the mapper work.

The authenticated CREST endpoint https://crest-tq.eveonline.com/characters/<CHAR_ID>/location/ now returns a location if the character is online.
{     "solarSystem":     {         "id_str": "30000142",         "href": "https://crest-tq.eveonline.com/solarsystems/30000142/",         "id": 30000142,         "name": "Jita"     } }

Ping... To my knowledge we currently should have character location and waypoint/destination methods.
I think we should start by implementing SSO auth and then requesting CREST token.
Someday the IGB is going away anycase. Also there is currently the CREST app contest. Dunno if the ews can take part on that or not.

@dagoaty any idea how long that endpoint is cached? updated on every request?

When running EWS e.g. on tablet, there could be enpoint/page that would have signature submit form that would update signature list of current system. Idea is that one would use the mapper from tablet, but copy-paste signatures to igb or external browser.

@raphendyr
The endpoint is cached for 10 seconds.
There is currently no way to know to start polling the endpoint, i.e. when a character logs on
You should stop polling when the endpoint returns an empty dictionary, but have some fuzziness to make sure it wasn't just a quick disconnect.
(from https://developers.eveonline.com/blog/article/crest-updates-for-january-2016 under 'CHARACTER LOCATION')

We need to speed development on this area. In 11 Oct the IGB will be removed: https://community.eveonline.com/news/dev-blogs/bidding-farewell-to-the-in-game-browser/
I try to start working on it soon. I just need to allocate some time and setup test setup.

Let me know when you have something working and I'll get my test installation set up again.

Considering the announcement, this indeed needs to be a priority if the mapper is to survive, and it would be a shame if it didn't. I still prefer EWS over the other fancier-looking tools that have opened up recently.  @raphendyr would be very welcome if you can indeed spearhead this .. I can help test.

I don't know if you have a rough idea of how you want to handle this. I'm thinking something like:

A new section under Settings->My Settings called something like 'Authenticated Characters'. This would have an add new character button which goes through the CREST authentication process. It would also list existing characters mapped against your account, plus the ability to delete them.

You need to be able to activate mapping for each character, so a "Pilots" drop down from the "baseNavDiv" navbar which contains a list of all CREST authenticated pilot names. Clicking on a name toggles the mapping for that character.

Finally, the polling code needs to handle an empty dictionary being returned causing mapping to be disabled. Presumably after (e.g.) 5-10 empty returns. It could be nice if this is notified to the logged in user owning that pilot, but not essential.

This is just ideas I'm throwing out. I wish I knew my way around Django enough to help code this.

Sounds good. I'm working with few django projects at work (you can notice from my profile) so that part will be easy, I just need to introduce my self to this project code.
About @dagoaty's points. Those sound good. Basically we need model to contain user with mappings to multiple EVE sso logins/crest tokens (so it doesn't matter what char you use to login after initial). Also tool needs to be able to merge 2 users (no need initially)
The menu to toggle tracking on and off is probably ok so you can disable tracking your characters. Though actual tracking I hope to be automatic. Keep it in 5-10s when player is online and drop to multiple minutes or so, when there is no response (se when he is online again, mapping is resumed).
As there might not be UI connected, I think silent mapping should be on. Maybe new connections should be marked as automatic or so. Need to iterate over this more.
We probably need to implement fleet interface at some point if the current ship was not available from other endpoints. Need to check that.
With ship info we can filter out pod kills/destructions. If new system and you are in pod then do not add new system.
Any ideas are really welcome here or in tweetfleet/#devfleet. I try to get my setup going on this week and maybe some initial work going on next.

The endpoint is cached for 10 seconds so there's little point going to a 5-10s poll. Realistically you're unlikely to cross multiple systems in 15-20 seconds so polling in that timescale would work.
CCP appear to want us to stop polling when we get an empty dictionary back. I like the idea of the mapper not needing intervention to start polling when we log in though. Maybe if a user is logged in and has a map open the polling should poke every 5 minutes until it gets a non-empty response then switch to the 15-20 second poll mode?

I'll try to reactivate an account and work on this a little this weekend. This is the feature that made me realize EWS needed a ground-up rewrite that I don't have time for.
As a stop-gap, I will try implementing a structure stored in memcached with the current polling state and cache expiry of each character. Then a polling task running every 5s can scan that structure and only poll the ones whose cache timer is up and that have an active polling state.
The polling states would start as active when a user clicks a button in the UI to start tracking for a character and move to pending when an empty dictionary is recieved. Pending records would be polled every 30s for 5 minutes and then be removed (logoff assumed).

Work in progress version at https://github.com/raphendyr/eve-wspace/tree/feature/crest_wip if someone is interested to follow it. Comments are welcome in tweetfleet slack or github.
Got the eve sso example from https://github.com/flesser/django-crest-example integrated.
From here:

user needs map of characters associated to him (with CREST tokens)
implement way to get character objects (contain name and picture link etc)
groups need list of corporations that are part of it.
groups account has access to, should be loaded and cached to session in middleware. this cache should be invalidated when any change to group members are done.

I'm again working on this and I expect get this in some condition on this week.

This is slightly more urgent now the IGB has been removed in the Ascension update (Nov 2016).
https://community.eveonline.com/news/dev-blogs/bidding-farewell-to-the-in-game-browser/
Without C.R.E.S.T. SSO and location support everything has to be inputted manually.

That;'s great. I was worried this project was dead. If you need any help, let me know.

In the branch "crest" you'll be able to find a working implemention of CREST. Current accounts are still used to login, however one account can hold multiple EVE account under the API button ("CREST Account Management).
In settings.py additional settings were added, which need to be updated before use:
CREST_ENABLED = False
CREST_SECRET_KEY = 'xxxxxx' #to be created at https://developers.eveonline.com/ for TQ
CREST_CLIENT_ID = 'xxxxxx' #to be created at https://developers.eveonline.com/ for TQ
CREST_BASE_URL = 'Your URL here' #do not forget the / at the end and https if the connection is secure
CREST_USER_AGENT = 'EVE W-space Instance' #116
For developers the scope is also included.
Currently the following items do need further development:

The location is pulled only once every 30 seconds for each char. It does not differentiate between online and offline chars, this can however be done and then scale it up.
Refresh tokens which do not work anymore (pulled every 20 minutes) are not being deleted from the database after x amount of failures.

Added ESI support and changed some naming around. It consists of 3 modules now:

SSO: For all auth related stuff
CREST support
ESI support: #261

If you follow the install docs and try and install the crest branch it'll break when you try and install the requirements in the virtualenv:
Collecting pycurl==7.43.0 (from -r /home/maptool/eve-wspace/requirements-mysql.txt (line 25))
  Downloading pycurl-7.43.0.tar.gz (182kB)
    100% |████████████████████████████████| 184kB 6.5MB/s
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-XHRWr7/pycurl/setup.py", line 823, in <module>
        ext = get_extension(sys.argv, split_extension_source=split_extension_source)
      File "/tmp/pip-build-XHRWr7/pycurl/setup.py", line 497, in get_extension
        ext_config = ExtensionConfiguration(argv)
      File "/tmp/pip-build-XHRWr7/pycurl/setup.py", line 71, in __init__
        self.configure()
      File "/tmp/pip-build-XHRWr7/pycurl/setup.py", line 107, in configure_unix
        raise ConfigurationError(msg)
    __main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-XHRWr7/pycurl/

This can be fixed by running this command to install the missing packages on an Ubuntu 12.04 LTS server:
sudo apt-get install libcurl4-gnutls-dev librtmp-dev

You're completely right, I'll update it later today.
This is what I get for never running a production environment :P.

Also for creation of the Site API key it would be good to mention that you need to give the following scopes as it isn't obvious without looking in the code:
esi-location.read_location.v1: Allows reading of a character's active ship location
esi-location.read_ship_type.v1: Allows reading of a character's active ship class
Another snag I've run into is that the SSO stuff is at the end of the settings.py That means that you can't override it in local_settings.py and actually enable SSO support. Rearranging things in settings.py fixes this.
I'm also not getting the API menu showing up for normal users. I've not debugged as to why yet. It does show up as an admin though.

I've added libcurl4-gnutls-dev and librtmp-dev to the documentation apt-get command.
I've included the two scopes in a comment in the settings.py and local settings example file
I've pulled up the SSO/CREST/ESI settings in settings.py about the try/except
I've updated the example local settings with the latest celery schedule
I've removed the permission to view the API menu at all (there are still permissions in place for adding API keys)

Great! Thanks for the hard work. I've updated my install and redone my local_settings.py. Now I'm at home I have tested with the game client running. I can add my CREST SSO login to the API fine however the map shows no indication of updating to include my presence or add systems when I jump. I think there something must be wrong with the polling. I'll dig into the celery jobs.

You could run it through the python/django shell to determine whether the function is at least working properly.
from API.tasks import update_char_location
update_char_location()

If it then shows up on the mapper under pilots, at least you know with certainty it is the celery schedule/worker.

I ran celeryd in debug mode. I got the following error:
[2016-12-20 19:22:26,463: ERROR/MainProcess] Task API.tasks.update_char_location[298ff8d2-e964-4966-8d43-48538bdd59bc] raised unexpected: NameError("global name 'esi_access_data' is not defined",)
Traceback (most recent call last):
  File "/home/maptool/eve-wspace/local/lib/python2.7/site-packages/celery/app/trace.py", line 240, in trace_task
    R = retval = fun(*args, **kwargs)
  File "/home/maptool/eve-wspace/local/lib/python2.7/site-packages/celery/app/trace.py", line 438, in __protected_call__
    return self.run(*args, **kwargs)
  File "/home/maptool/eve-wspace/evewspace/API/tasks.py", line 49, in update_char_location
    response = esi_access_data(token,url)
NameError: global name 'esi_access_data' is not defined

Fixed. :)

And on to the next error:
[2016-12-20 19:27:31,787: ERROR/MainProcess] Task API.tasks.update_char_location[afb5b626-555d-4487-8080-f6c280ee5fb0] raised unexpected: NameError("global name 'Type' is not defined",)
Traceback (most recent call last):
  File "/home/maptool/eve-wspace/local/lib/python2.7/site-packages/celery/app/trace.py", line 240, in trace_task
    R = retval = fun(*args, **kwargs)
  File "/home/maptool/eve-wspace/local/lib/python2.7/site-packages/celery/app/trace.py", line 438, in __protected_call__
    return self.run(*args, **kwargs)
  File "/home/maptool/eve-wspace/evewspace/API/tasks.py", line 60, in update_char_location
    current_ship = get_object_or_404(Type, pk=ship_type_id)
NameError: global name 'Type' is not defined

The first is solved. The second and third seem to be an issue on CCPs side, which I just checked on tweetfleet as well. The calls are throwing a 500 internal server error quite frequently with an uncaught exception. One thing I am currently looking into is how to do error handling, which are caused by CCP.

I wondered what was going on! Thanks for your help tonight so far.
Presumably if the ESI call gets an error back then it'll just poll again?

Since it seems that ESI is not that stable yet I've done it a bit differently. First, the system will throw a request at the ESI server twice, one for the location and one for the ship type/name. If the first (location) fails or gives no response a CREST request it submitted to gain that information through CREST. Ship type/name is considered an added benefit, if it returns empty the ship type/name are reported as "Unknown". This way we rely on the most modern method first, where CREST is the fallback. An additional scope has been added to the settings to facilitate this.

Ok, thanks, that's working better in my root system now. It does occasionally find out the ship name + type (btw the labels are backwards in the pilot list and the system tooltip for these).
I tried jumping through an unmapped wormhole, It didn't add the new system to the map. I tried running the update_char_location() manually but I do not get any kind of stack trace this time. I intermittently get uncaught exception messages but I presume they are to do with the ESI server barfing HTTP 500 errors.

Changed the ship name and type around, so it is correct now. Small fix 👍.
The jumping through an unmapped wormhole is indeed not implemented again, my concern was mostly making SSO/CREST/ESI work and show with one functionality how it was implemented.

I intermittently get uncaught exception messages but I presume they are to do with the ESI server barfing HTTP 500 errors.

I am unsure whether this is actually ESI, since I am handling this error (by creating a response of None). Did you update the scope of your SSO user to include the CREST endpoint? Otherwise this would throw exceptions.

Thanks for that. Yes I did update. It wouldn't actually run until I cleared out the old SSO tokens from the database as I got 404 forbidden errors when it was requesting the CREST player location anyway.
When I run the code manually I get:
>>> update_char_location()
{u'error': u'uncaught exception'}

or
>>> update_char_location()
{u'error': u'uncaught exception'}
{u'error': u'uncaught exception'}

or it succeeds without any output.

I know why, I put a print in to know how often it was going wrong. It is just the error handler being called :). I'll take it out.

The jumping through an unmapped wormhole is indeed not implemented again

I'm guessing a rework of the code from _checkin_igb_trusted() in Map\views.py can be used to implement this?

Probably, it is a bit more tricky since you are not sending a response to the client initiating the update (which you did in the IGB)... I have an idea how it could be done, but not sure it is a good idea.

I'm guessing the CREST /  ESI polls still run even if you aren't viewing the website. So presumably you'd have to detect if the player was logged into the web site too. If they were then pop up the add system dialog just like when manually adding systems (but with some info pre-populated). Otherwise silently add the system with some sensible defaults for links. I suspect getting this last bit to work is pretty straight forward.

I'm guessing the CREST / ESI polls still run even if you aren't viewing the website.
Correct

So presumably you'd have to detect if the player was logged into the web site too. If they were then pop up the add system dialog just like when manually adding systems (but with some info pre-populated). Otherwise silently add the system with some sensible defaults for links. I suspect getting this last bit to work is pretty straight forward.

The first is the trickiest part, adding a system silently isn't a huge deal. The update char location already determines whether you are in a new system, thus allowing you to add it automatically following the logic which the IGB used.
I'm considering merging the crest branch in develop and create a new issue for the before mentioned items.

Actually I though of a more elegant way to do it:

API always adds systems silently, as you said this is fairly straight forward.
Front end checks player system during a map refresh. If the system is missing info or is new prompt for updates (based on a timestamp or a flag).

That way you don't ever need to worry if someone is logged in or not. It also means if other users can add information if the original system discoverer is logged off. Whoever gets to the system with the mapper open can be prompted to update it.
This could also built on to prompt for updates for sigs, wormhole status etc if the system data is determined to be 'stale'.
This all might need a few config options to let an admin make it more or less annoying for end users.

The only use case which isn't covered is the ability to add blank systems. You press the + when scanning, it shows a black system on the map, while it also adds a system (silently). So that functionality needs to be disabled if we follow the logic above.

That seems like a reasonable compromise to me?

Just as a small fyi: I've removed libcurl/pycrest requirement, since I found out that the requests library can achieve the same result.

Alright. Can I switch from crest to the develop branch without breaking anything or would throwing the ec2 instance away and starting from scratch be better?

The develop branch also includes a general change in requirements (version numbers) of the python modules.
Otherwise changing should not break anything, since pycrest/libcurl is more bloat than anything else :). I did refactor some code a moment ago, so maybe double check whether the develop branch is working as intended for you.

I might try another Ubuntu 16.04 install and see if the updated requirements work on it actually.


Rethink operation of grid-analyzer

Assuming we run:

grid-trainer that resulted in a grid of trained models (let's say 6 exp = 2 models x 3 problems)
then we run grid-tester with two runs (with different random seeds of course)

That results in 10 "experiments" that should potentially form the content of a single csv file - 12 rows?
The goal of this issue is to discuss what, how and when should be copied taking into account:

we got best_model.pt checkpoint, which indicates in which episode the model was created
we got two types of trainers, that could save the model depending on loss calculated on:

online-trainer: partial validation set, that is activated every episode % "partial_validation_interval"
offline-trainer: full validation set, that is calculated at the end of every epoch

Besides, offline-trainer can optionally store partial_validation_statistics in csv.file, when one set partial_validation_interval > 0 in config:validation section.
As a result, different trainers will produce different statistics, how to deal with that diversity - this is the goal of that discussion/issue.

Idea:

save model always using aggregated validation stats (even when it is partial validation)
online trainer:

partial_valid_collector -> export(col) + aggregate -> export(agg) + save model(agg)
end: full valid -> export(agg) + save model (agg)

offline trainer:

partial_valid -> export(col)
at the end of epoch --> full valid -> export(agg) + save model (agg)
end: full valid -> export(agg) + save model (agg)

As a result, we can depend always of the content of validation_statistics_agg.csv for validation data...
i.e. simply read it from model checkpoint!

For Testing: use test_statistics_agg.cvs - this one is easy, we want the aggregated for whole training set, there is only one row in that file.
For training: use training_statistics.csv - we want to use collected (not aggregated) statistics, we can read episode from checkpoint (this is the best model), and find adequate row.

For training: use training_statistics.csv - we want to use collected (not aggregated) statistics, we can read episode from checkpoint (this is the best model), and find adequate row.

As a result, the ONLY thing that we want to really hardcode to read from checkpoint is... episode, which we know that always exists! 👍

Next issue: extraction of timestamps.
We can extract:

training timestamp (from directory, indicates when training was started)
model timestamp (from checkpoint, indicates when we saved the best model)
test timestamp (from test dir, indicates when test  was started)

When it comes to collecting everything in one row, we need to add prefixes to the headers:

add "train_" for all columns read from training_statistics.csv,
add "valid_" for all columns read from checkpoint.
add "test_" for all columns read from test_statistics_agg.csv

As agg statistics for a single batch make no sense, we discussed that with @vmarois and agreed that:
online trainer:
    partial_valid_collector -> export(col) + save model (training_col, partial_valid_col)
    end: full valid -> export(agg)  (no save!)
offline trainer:
    partial_valid -> export(col)
    at the end of epoch --> full valid -> export(agg) + save model (training_agg, full_valid_agg)
    end: full valid -> export(agg) (no save!)

As a result, we can depend always of the content of validation_statistics_agg.csv for validation data...
or even not - simply read the RIGHT ROW with validation statistics aggregated from model checkpoint!
this change is needed to standardize results in grid-analyzer


datasets.tar.gz

Thank you very much for sharing the code, but we can't download the data (datasets.tar.gz ), can you re-share the download link?
Thank you.

I just checked the link in the README, it should be valid: https://storage.yandexcloud.net/yandex-research/ddpm-segmentation/datasets.tar.gz

Thank you, I have successfully downloaded the data.


Changelog

I can't find updated changelog.
Newest version is 1.3.0, but changelog, that I found(http://bit.ly/2FftW4D) is only for 1.2.3.

Check the file on curseforge that is always up to date as it’s generated by our build server.

On Mar 5, 2018, at 9:52 AM, Redwoodstudio<EMAIL_ADDRESS>wrote:
I can't find updated changelog.
Newest version is 1.3.0, but changelog, that I found(http://bit.ly/2FftW4D) is only for 1.2.3.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


List additions

We can't see and code what drop downs look like when opened.

I don't understand this pull request. Did you mean to open an issue?


Add SimulatedCalibratableCamera

To avoid rewriting the very simple implementation of a SimulatedCalibratableCamera in every project, this PR adds it to rosys.vision.
NOTE: due to circular dependencies, the implementation was placed in the __init__.py.

Strange. It now works for me, too.


[ar] Localize term "Pod" to Arabic

Describe your changes
This PR will add a new file content/ar/pod.md localizing the glossary entry
"pod" into Arabic.
Related issue number or link (ex: resolves #issue-number)
No issue assigned.
Checklist before opening this PR (put x in the checkboxes)

[x] This PR does not contain plagiarism

don’t copy other people’s work unless you are quoting and contributing it to them.

[x] I have signed off on all commits

signing off (ex: git commit -s) is to affirm that commits comply DCO. If you are working locally, you could add an alias to your gitconfig by running git config --global alias.ci "commit -s".

@TarekMSayed @arezk84 d you have any additional comments or suggestions? I appreciate your effort


Test windows under appveyor

http://appveyor.com is pretty easy to set up -- at the least I'd suggest testing py27, py35 on appveyor (since it is kinda slow).
This should be sufficient:
appveyor.yml
environment:
    matrix:
        - TOXENV: py27
        - TOXENV: py35

install:
    - "SET PATH=C:\\Python35;C:\\Python35\\Scripts;%PATH%"
    - pip install tox virtualenv --upgrade

# Not a C# project
build: false

test_script: tox

cache:
    - '%LOCALAPPDATA%\pip\cache'

Didn't know about this service, will look into it.

Turns out this is no longer feasible.  Appveyor no longer runs a tty


npm command never completes when user is offline

This is partly an issue with npm itself in that it doesn't time out, but in general... we should offer up a way to cancel the npm command that's started executing (and/or not try at all if the registry is unavailable.)

@armanio123 I think we're running npm out-of-proc, so it seems like we just need a "cancel" button and a Process.Kill call.  Can you please have a look?  If it looks like more than that, please update the bug.


Properly handle characters outside of charset

The current behavior of using REPLACE on CharsetEncoders and Decoders
means that characters outside of the specified charset will be silently
replaced with another character ('?' for ASCII, \uFFFD for UTF-8, etc).
As indicated by the usage in ByteBufUtil, REPORT is the desired
behavior.  When a character outside of the charset is found, either an
exception is thrown or a CoderResult is returned.  It looks like all
of the code using getEncoder() and getDecoder() expect the REPORT
behavior, not the REPLACE behavior.

Closing in favor of #3321. Let me know what you think, @thobbs!
Thanks @Scottmitch for heads up.

#3321 looks good, thanks @trustin!


new lesson: StringBuilder in Java

⭐ Request Type
Add brief documentation on the StringBuilder Class in Java.
The markdown file is located here.
Lesson Content

Introduction
Code examples for StringBuilder
code explanation

💻 Location
This lesson is present under the
Section: 6
Lesson: B
Location Order: 6B
File-Name: string-builder.md
❌ Additional Info
You can take the help of other markdown files in the /lesson directory so that you get the idea of in which fashion you should write.
If you don't know how to do markdown, don't worry it is quite easy, just follow this docs-https://guides.github.com/features/mastering-markdown/
If your concepts are not that good follow this StringBuilder video of @kunal-kushwaha (https://www.youtube.com/watch?v=zL1DPZ0Ovlo)

Hi @Utkarsh1504 !, can u assign me to do the documentation for this(String Builder in Java)? I can work on this .

Can i work on this issue ?

@AsswinCR Sure, you start working on this issue. Just make sure to read the contribution guideline that would be great, Thanks.

Hey @RahulSoni0, man sorry for you, you can work on another issue as this issue is already requested by @AsswinCR but don't worry, I will raise more issues and will assign you for sure. Thanks @RahulSoni0

@RahulSoni0 you can work on Cycle Sort, just drop a comment, I will assign you.

@RahulSoni0 you can work on Cycle Sort, just drop a comment, I will assign you.

Okay , i can work on Cycle sort , please assign that ,

Please assign me this issue.


Add testcases for AssignCommand and UnassignCommand

Codecov Report

Merging #247 (4796e19) into master (d1a6613) will increase coverage by 2.32%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #247      +/-   ##
============================================
+ Coverage     54.18%   56.50%   +2.32%
- Complexity      658      703      +45
============================================
  Files           125      125
  Lines          2798     2798
  Branches        295      295
============================================
+ Hits           1516     1581      +65
+ Misses         1176     1104      -72
- Partials        106      113       +7

Impacted Files
Coverage Δ

.../main/java/seedu/address/model/lesson/Subject.java
71.42% <0.00%> (-7.15%)
:arrow_down:

...java/seedu/address/model/lesson/LessonAddress.java
71.42% <0.00%> (-7.15%)
:arrow_down:

src/main/java/seedu/address/model/tag/Tag.java
80.00% <0.00%> (ø)

...rc/main/java/seedu/address/model/student/Name.java
80.00% <0.00%> (ø)

...c/main/java/seedu/address/model/student/Email.java
85.71% <0.00%> (ø)

...c/main/java/seedu/address/model/student/Phone.java
80.00% <0.00%> (ø)

...in/java/seedu/address/model/lesson/LessonName.java
80.00% <0.00%> (ø)

...seedu/address/logic/commands/AddLessonCommand.java
33.33% <0.00%> (ø)

...edu/address/model/lesson/ConsistentLessonList.java
62.02% <0.00%> (+3.79%)
:arrow_up:

...main/java/seedu/address/model/student/Student.java
94.91% <0.00%> (+5.08%)
:arrow_up:

... and 9 more

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 d1a6613...4796e19. Read the comment docs.


Correct spelling mistake for 0.x-1.x-upgrade-guide.md

Correcting a spelling mistake

@wmundev Thanks for your contribution! Could you please run npm run beachball:change in the root directory and go through the prompts to generate the change files? You can select change type "None".
Thanks!

all done, ready to merge whenever :)

sorry had to force push to get rid of my private email address, should be good now

@wmundev Can you remove the change files for everything except msal-angular? Not sure why beachball prompted you for the other libs...


[BIA-996] Need for all students with any enrollment

Add scripts to create vie AllStudentDim (MSSQL 2,3.1,3.2,3.3 and Postgres 3.2, 3.3)
Add test cases.

Data Standard 2:
. When I remove line 43 OR StudentSchoolAssociation.ExitWithdrawDate > GETDATE()
. When I comment out the COALESCE on line 48 COALESCE(cast(StudentSchoolAssociation.ExitWithdrawDate AS VARCHAR(100)), '') AS ExitWithdrawDate
Data Standard 3.x. (SQL Server and Postgres):
. When I comment out the COALESCE on lines: 44,54,55,56,57,58.
. When I remove the line 60: OR StudentSchoolAssociation.ExitWithdrawDate > GETDATE()
I think that if these scenarios are not covered on StudentSchoolDim either, we can create a bug ticket to fix both. In the end the fix is going to be the same one, or almost the same one.

Looks good now.


Host uptime data format

Have the API to return :
{
  uptime: {
    day: 1,
    hours: 2,
    minutes: 3
  }
}

instead of :
{
  uptime: {
    day: 1,
    time: '2:03'
  }
}

Fixed ebb6d8e


Added Projects API

We are missing update projects endpoint, but we have a test for it that is failing and waiting for them to fix: https://github.com/cognitedata/service-contracts/issues/227

Wrong target branch


Create PushWoosh Compatible Fork

Per the ZeroPush / PushWoosh migration documentation it seems that there is parity between the two providers' APIs:

And of course, if you use Zeropush API in your backend - point it from https://api.zeropush.com to https://zeropush.pushwoosh.com too!

If this is the case it seems that this Ruby Client library could be made compatible with PushWoosh by updating the following line of code:  https://github.com/ZeroPush/zero_push/blob/master/lib/zero_push/client.rb#l6
If my assumptions are correct, would it be possible to create a fork of this library with the suggested change?  I'm happy to create the fork.
Thank you for your help in advance and congrats on the acquisition!

I forked this library and made a "bridge" gem between ZeroPush and PushWoosh.  I intentionally wanted to be explicit about the fact that a separate gem is being used to facilitate the migration and avoid potential long term confusion.
The cost of this explicitness is that legacy code will need a minor modification to update references of ZeroPush to ZeroPushWoosh.
The gem can be found here:  https://github.com/cortexintel/zero_push_woosh
I just migrate my data from ZeroPush o PushWoosh and ran a test push notification using this gem.  Everything seems to have worked just fine.


Floorplan annotations

Thanks for your amazing work! I wonder is there 2D floorplan annotation for the scene (Or do you have any plans to release this kind of annotation in the near future)?
Best,
Yuanwen

Hi @ywyue ,
We do not have any floorplan annotations at the moment. There are no immediate plans to get these.

Thanks!


Annotate namespaces with the Gateway for ingress traffic

For ModelMesh there is the need to expose InferenceServices. The controller managing this is odh-model-controller.
For the Istio integration, the odh-model-controller is going to create VirtualServices. A gateway needs to be specified in such VirtualServices to properly expose models. Since the odh-project-controller has this knowledge, it is going to be very useful to have labels annotations over the namespaces to set the Gateway namespace/name that can be used for exposing models.
Suggested labels annotations are the ones already in use in the route: maistra.io/gateway-name and maistra.io/gateway-namespace.

@bartoszmajsak I agree that using annotations is better for this.
Also, using opendatahub.io/serive-mesh-gateway-name makes more sense than using maistra in the prefix, given that this would be out of the maistra domain. Would it be a single annotation? Or a pair for namespace and gateway name?

@israel-hdez Please take a look https://github.com/maistra/odh-project-controller/pull/13

@israel-hdez this is now pushed to maistra-dev repo, you can find it here: quay.io/maistra-dev/odh-project-controller


Character encoding

On https://ssl-templates.services.gc.ca/app/cls/WET/gcweb/v4_0_32c/cdts/appTop/refFooter_exitscript-en.shtml
We receive those errors

10:50:58.377 The character encoding of the plain text document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the file needs to be declared in the transfer protocol or file needs to use a byte order mark as an encoding signature. en.min.js

10:50:58.722 The character encoding of the plain text document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the file needs to be declared in the transfer protocol or file needs to use a byte order mark as an encoding signature.

@StdGit I don't see the error in the link you provided. Is this still an issue?

@StdGit I don't see the error in the link you provided. Is this still an issue?

Errors are no longer present. Closing issue.

Errors are no longer present. Closing issue.


Increase CF_STARTUP_TIMEOUT to 15 minutes

The app was taking over 10 minutes to deploy, so deploys were failing.

Now that we're only scaling template-preview to a max of 4 instances https://github.com/alphagov/notifications-paas-autoscaler/pull/100, this change shouldn't be needed


Fixed unneeded function.

Codecov Report

Merging #79 (2682c38) into main (7f7eb78) will decrease coverage by 0.01%.
The diff coverage is n/a.

Additional details and impacted files

@@            Coverage Diff             @@
##             main      #79      +/-   ##
==========================================
- Coverage   89.73%   89.72%   -0.01%
==========================================
  Files          92       92
  Lines        9981     9977       -4
==========================================
- Hits         8956     8952       -4
  Misses       1025     1025

Files Changed
Coverage Δ

include/async_mqtt/broker/endpoint_variant.hpp
98.31% <ø> (-0.06%)
:arrow_down:


[RESOLVED] Interface eth0(): High error rate (>2 for 5m)

Problem started at 12:54:29 on 2023.05.20
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Operational data: errors in: 0, errors out: 0
Original problem ID: 20987
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23483&eventid=20987

Problem has been resolved in 3m 0s at 12:57:29 on 2023.05.20
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Original problem ID: 20987


node_modules being ignored during build

Bug Report
ES6 code from node_modules leaks into the dist .js files as it's getting ignored by the transformers.
Prerequisites

[x] Can you reproduce the problem in a MWE?
[x] Are you running the latest version?
[x] Did you perform a search in the issues?

Environment Details and Version
Version 0.9.2
Description
When You create a build that imports dependencies from node_modules, which are written in es6, for example with template strings, then these will not be converted to es5 compatible js.
This is an issue if you need to support IE 11.
Steps to Reproduce

Create a shell application, build it
check the resulting .js file for template strings.. you'll find some.

Expected behavior
No ES6 in the dist files.
Actual behavior
Template strings found in the dist files.
Possible Origin / Solution
This is actually a parcel issue: https://github.com/parcel-bundler/parcel/issues/2013
But it seems to be ignored.

Thanks for the report. We'll take care of it.
Potentially we'll go for a simple solution to just (for builds only, i.e., no debugging) apply a post-build action to transform all created bundles according to the .browserlist setting. Not sure yet how to generalize, but we'll figure something out!
:beers:

Landed in preview and develop.


Proper indentation and line breaks for Switch/Case and Closure

I didn't change those files manually. Please check related https://github.com/apple/swift/pull/59430 for changes in the sources used to generate files in the gyb_generated

https://github.com/apple/swift/pull/59430
@swift-ci Please test


feat: add system info to upload metadata runner property

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#28  👈
#27
#26
#25
#24
#23
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @adriencaccia and the rest of your teammates on  Graphite


python.buildPythonPackage: Add support for maturin

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

This currently does not eval but I am not sure how to make cargoHash python version aware.

This currently does not eval but I am not sure how to make cargoHash python version aware.

Closed in favor of #112500


Stripe refund webhook

Initial submission, see commit messages for detailed notes.
Resolves #380.
Link to Asana task: https://app.asana.com/0/90578496402390/119551005130791

@melinath This is in a situation where it can be reviewed / commented on.

I need to go over this again to make sure it's doing all the right things, based on things I've learned about Stripe since.

In thinking about this some more, I felt like mingling the data for both test and live modes in the same table might actually be something we want to avoid entirely. Maybe this is me being paranoid and afraid of potential though not actual problems. But it's also not actually that hard to achieve here, since these tables are free-floating and lack relationships. So I went ahead and made the two separate and it seems to work fine.

While I don't think that it's necessarily the worst to have two tables for this one thing, I have a couple of concerns.
This is different than how we handle test/live mode on all our other models. I would have a preference for us being consistent, which would mean keeping these as one model. I am tempted by the idea of splitting all our models in the future, since it would let us automatically enforce test/live data integrity at the database level. But I think that would make the models really hard to maintain and use - choosing whether to use LiveTransaction vs TestTransaction would be more annoying than choosing whether to pass live / test as an argument to filter / create. I'm also not convinced that the gain in database-level "validation" is significant over us just having better testing (which we would need anyway.)
So yeah... I'm leaning towards wanting these to be one model to be consistent with our other models. We might want to go with separate models later, we might not - but even if we did, it's unclear how long it would be until we could make that change, and we need to be able to deal with a consistent codebase in the meantime.

We forgot to celebrate this pull request's birthday!

I think this takes care of the main issue, which is that we weren't checking the Txn live/test mode. Which we are now doing :D

Also took the opportunity to clean up some of the things you pointed out, along with some other things I noticed while poking around in there.


Update ffmpeg binaries (Android)

Can you please update default ffmpeg binaries in this library ? Since i am facing hard time to create them on my side on Windows for android (no good video or documentation is available), I think it will be a piece of cake for you. 🙂
Thanks.

Hi @siddharth-kt, did you find a way to update FFmpeg binaries? I need to update binaries compatible with android 11 and 12.

Thanks for the quick reply @siddharth-kt I am facing a crash issue for some of the videos in android 11 or 12 and we identified that it is related to FFmpeg.so file. We are getting the below log in the crash report.
Any help will be appreciated, Thank you.
Crash log:
Crashed: Thread :  SIGABRT  0x0000000000000000 #00 pc 0x78b9c libc.so #01 pc 0x78b68 libc.so #02 pc 0x76717dc874   #03 pc 0x7671747150   #04 pc 0x76717474e4   #05 pc 0x7671746598   #06 pc 0x767174578c   #07 pc 0x440554 libart.so #08 pc 0x7613bd23fa   #09 pc 0x7613c15397   #10 pc 0x20087c libart.so #11 pc 0x20b02c libart.so #12 pc 0x7333ea98   #13 pc 0x7613bd23fa   #14 pc 0x7613bd22f8   #15 pc 0x20087c libart.so #16 pc 0x20a254 libart.so #17 pc 0x7613bd22f8   #18 pc 0x436b6c libart.so #19 pc 0x5589dc libart.so #20 pc 0x7613c153cb   #21 pc 0x576910 libart.so #22 pc 0x7613bd2294   #23 pc 0x211cc4 libart.so #24 pc 0x7613aebcaa   #25 pc 0x7613aebc88   #26 pc 0x7613a64f10   #27 pc 0x7613aebc88   #28 pc 0x7613bf96e6   #29 pc 0x442dd8 libart.so #30 pc 0xa14ffc libart.so #31 pc 0x7613aebc88   #32 pc 0x473fd4 libart.so #33 pc 0x385c1c libart.so #34 pc 0x473638 libart.so #35 pc 0xa14ffc libart.so #36 pc 0xdd664 libart.so

Actually I don't know much about this so can't help but @shahen94 might help you.

ok thanks @siddharth-kt for the help, @shahen94 please let me know if you can help from any perspective. Any help will be appreciated, thank you.


docs: add next steps to routing / defaults ref

Current dependencies on/for this PR:

main

PR #328   👈

This stack of pull requests is managed by Graphite.


chore: centralize/fix all endgame actions

Some components will make changes to themselves and then call endgame. They should just call endgame instead, which will manage them. Additionally, Menu components needs to call the endgame event on the Game component.

I've made a new branch, refactor, and currently am setting up a draft PR.

Fixed by #2.


noUncheckedIndexedAccess with enums could be type narrowed

Bug Report
Hi, we're trying to tighten up some of our code by using noUncheckedIndexedAccess. I know there are caveats to this compiler option which we've found by searching, but this one feels more like a bug?
🔎 Search Terms
Searched a variety of issues, the most relevant being: https://github.com/microsoft/TypeScript/issues/13778
🕗 Version & Regression Information
4.5.4
⏯ Playground Link
💻 Code
    enum Meat {
      Sausage,
      Bacon
    }
    const sausage = Meat.Sausage
    const value = Meat[sausage] // string | undefined

🙁 Actual behavior
value in the above example can't be undefined
🙂 Expected behavior
value to be typed as string, not string | undefined

Can be worked around with cont value = Meat[sausage]!

Your example is very narrow. Here's another example where it wouldn't work:
const sausage: Meat = 123
const value = Meat[sausage] // string | undefined

Yip it was intentionally narrow to demonstrate a scenario where I believe it shouldn't produce an undefined?

And I demonstrated by it should produce undefined. :-) Enums are not a union of literal types, so the type Meat.Sausage is the same as Meat.

I think the issue here is that numeric enums' reverse mappings are not strongly typed.  One could imagine a stronger typing where you wouldn't care about index signatures at all (why would you want to index into an enum with an arbitrary number anyway?  It's not like TS implements reverse bit flags:

⚙🛠
const _Meat = { Sausage: 0, Bacon: 1 } as const;

function withReverse<T extends Record<keyof T, PropertyKey>>(
    obj: T): T & { [K in keyof T as T[K]]: K } {
    return Object.assign({}, obj,
        Object.fromEntries(Object.entries(obj)
            .map(([k, v]) => ([v, k]))));
}

const Meat = withReverse(_Meat);
namespace Meat {
    export type Sausage = typeof Meat.Sausage;
    export type Bacon = typeof Meat.Bacon;
}
type Meat = typeof Meat[keyof typeof _Meat]

const sausage = Meat.Sausage // 0
const value = Meat[sausage] // "Sausage"

Playground link
As such this feels like it's strongly related to #38806

In this case sausage has the specific literal type Meat.Sausage and in that case we can be sure it won't be undefined. Any such access where all possible indices are specific literals of the enum (as opposed to the containing enum type Meat) can be safely narrowed to string.

@RyanCavanaugh Counterpoint:
enum Meat {
    Sausage,
    Bacon
}
const sausage: Meat.Sausage = 42;
const value = Meat[sausage] // string | undefined
console.log(value);  // undefined

Numeric enums are weird.

Sure, but all the unsoundness is packed into the assignment from 42, which already has an exploitable hole
const sausage: Meat.Sausage = 42;
const zero: 0 = sausage;
const tup = [1, 1] as const;
const n: number = tup[zero];

Huh, that’s bizarre. So Meat.Sausage is treated like a literal 0 type (its actual value) but allows assignment from any number…


Getting OS Error when using --save-as "cbz-single"

Version 0.6.1 on Mac OS version 12.2.1 with Python version 3.10.2
Using the --save-as "cbz-single" switch results in the error below, but using --save-as "cbz" works without an issue. I am not sure if this is an issue on my end due permissions or a missing package, or if it an issue with the app.  Thank you.
[ERROR] Unhandled exception, OSError: cannot open resource
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/cli/init.py", line 39, in _main
download(args)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/cli/download.py", line 12, in download
url(args, args.type)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/cli/url.py", line 89, in call
self.func(self.id, args)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/cli/url.py", line 22, in download_manga
dl_manga(
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/main.py", line 270, in download
fmt.main()
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/format/comic_book.py", line 214, in main
mark_img = get_mark_image(chap_name, cache, index)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/mangadex_downloader/format/utils.py", line 29, in get_mark_image
font = ImageFont.truetype(font_family, font_size)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/PIL/ImageFont.py", line 844, in truetype
return freetype(font)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/PIL/ImageFont.py", line 841, in freetype
return FreeTypeFont(font, size, index, encoding, layout_engine)
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/PIL/ImageFont.py", line 193, in init
self.font = core.getfont(
OSError: cannot open resource

cbz-single format has additional process creating an "finished: chapter x, next: chapter x" image in end of chapter which used arial.ttf font.
See this example image as reference

As i looked so far, your OS seems doesn't have arial.ttf font. Maybe check your installed fonts maybe ?


Too much output when using quad ⎕

To Reproduce
Steps to reproduce the behavior:

Go to  https://problems.tryapl.org/
Scroll down to sample problem input
Try {⎕←'ok'}¨

We should probably suppress ⎕ and ⍞ output if possible, but it's low priority (anyone who knows what ⎕ and ⍞ do should be able to figure out what's going on)

Will go away when we switch to TryAPL-based execution

With ATO-based execution and the "user feedback" improvement this case will output nothing. rx.exec(...) returns null for ⎕←, ⎕off, etc.

Since we've switched to ATO backend, the issue is now (ironically) too little output.

Does '...should have returned 3 with ('COOLAPL') as right argument.' sound appropriate for early halting expressions? (To clarify these expressions return un-expected output, or often errors - which we ignore. I think it's ok, though naive, to simply detect the null and ignore the details)

Yes, I think so. Though technically {⎕←'huh' ⋄ +/⍵∊'AEIOU'} should/could(?) pass…

That's a good point, though handling that would require changes to the framework, or possibly subsequent requests for round-tripping purposes.


About 100 tsserver.log files each ~1-3GB log files

VSCode Version: Insiders (not sure which caused these)
OS Version: Mojave

I looked through the log files roughly and they just seem to be showing lots of information about the files I've been editing.
Each of these blocks is a logfile, the selected one is 4.4GB:

The pathnames look like:
Users/nw/Library/Application Support/Code - Insiders/logs/20190601T024350/exthost1/vscode.typescript-language-features/tsserver-log-feCn36/tsserver.log

Please use Command Palette to run Developer: Set Log Level... and check whether yours has been changed from Info which is listed as the default.

In VS Code, set "typescript.tsserver.log": "off". TypeScript Server logging will slow things down quite a bit and is only useful if you are investigating a problem
These log files should also be automatically cleaned up at some point. #75539 covers that


Make the 32Blit tool autodetect the COM port of the 32Blit (on Windows)

The Windows version was just getting the first USB COM port. Since there can be many (I had two others BEFORE the 32Blit), this is not a good way to work.
Added code to actually detect the COM port based on the PID and VID of the USB device. (I found this method of detecting device on the internet, adapted it to the 32Blit tool).

Sorry about the ugly code, I based it off from somewhere but needed to make changes to work in the 32Blit tool and then it ended up being this mix of C and C++ style blaah.

Uh oh, looks like mingw is missing DEVPROPTYPE.

CMake needs something like in tools/src/CMakeLists.txt:
if(WIN32)
    target_link_libraries(32Blit setupapi)
endif()

MinGW may just need DEVPROPTYPE swapped for DWORD.
Should hopefully get it building...

I will check it out tomorrow, and try to fix it.

Hmm, since this compiles fine with my local mingw, updating the travis build to 20.04 will probably also fix it. (Similar to the recent change for STM32).

@lenardg thanks, this could be super handy! The Python flash tool is still lagging behind this one.
Did you ever manage to look into the suggested tweaks & get it building?

I have been pretty snowed under lately from work, but I really really would want to get back into 32Blit. I will try to look into these this weekend, if that is an ok timetable for you guys?

In your own time. I didn't want to push you into doing anything, but rather try and clean house with our outstanding PRs. I prefer to get things merged to achknowledge people's work if I can. Plus this is a useful change.
But yes, this weekend or whenever suits you. No pressure. Honest!

This might need a bump to kick off the integration tests post The Great Travis CI Exodus. You can push an empty comit or something for that, IIRC!

Okay I'm closing this because the tools have been ripped out of this repository to here - https://github.com/32blit/tools-cpp
By and large the Python tool completely replaces this, but I'll leave the door open for PRs.

Okay I'm closing this because the tools have been ripped out of this repository to here - https://github.com/32blit/tools-cpp
By and large the Python tool completely replaces this, but I'll leave the door open for PRs.


fix: specify confirmation in cosign invocation

Description
cosign needs the --yes parameter when running as a script. This
specifies it to fix the signing steps.
Related issues

Close #XXX

Remove this section if you don't have related PRs.
Checklist

[ ] I've read the guidelines for contributing to this repository.
[ ] I've added tests that prove my fix is effective or that my feature works.
[ ] I've updated the documentation with the relevant information (if needed).
[ ] I've added usage information (if the PR introduces new options)
[ ] I've included a "before" and "after" example to the description (if the PR is a user interface change).

@JAORMX thanks you 🙏  it look like it did the job


GitHub2PROV prototype implementation

Is your feature request related to a problem? Please describe.
.-
Describe the solution you'd like
Implement an interface for github to be able to populate our model with data sourced from git repositories hosted on github.com
Additional context
GitHub2PROV

Related issues:

#79
#80


Comparison

Describe the solution you'd like
Compare stats of 2 countries with graphs as well.
Describe alternatives you've considered
Can add comparison btw Indian states.
Additional context
Can compare Indian state to other countries as well.

Done country wise comparison


Skill bug fixes

Relates to #2774
Fixes issue handling InvokeActivities
Added code to create a deep clone of the Activity in ForwardToSkill in order to avoid issues related to manipulating the activity during the forward operation
Removes functionality to load Skills information from config in BotFramworkSkillHostAdapter and ForwardToSkill overload that was using it.
Updated ForwardToSkill abstract method in SkillHostAdapter.
Fixed several compilation warnings by removing unused parameters (we can add them back later).

Pull Request Test Coverage Report for Build 88712

0 of 0   changed or added relevant lines in 0 files are covered.
819 unchanged lines in 104 files lost coverage.
Overall coverage decreased (-0.6%) to 76.488%

Files with Coverage Reduction
New Missed Lines
%

/libraries/Adapters/Microsoft.Bot.Builder.Adapters.Facebook/FacebookAdapter.cs
1
96.67%

/libraries/Adapters/Microsoft.Bot.Builder.Adapters.Facebook/FacebookClientWrapper.cs
1
93.24%

/libraries/integration/Microsoft.Bot.Builder.Integration.ApplicationInsights.Core/ApplicationBuilderExtensions.cs
1
71.43%

/libraries/Microsoft.Bot.Builder.AI.LUIS/LuisApplication.cs
1
95.45%

/libraries/Microsoft.Bot.Builder.AI.LUIS/V3/LuisApplication.cs
1
96.43%

/libraries/Microsoft.Bot.Builder.AI.LUIS/V3/LuisUtil.cs
1
96.5%

/libraries/Microsoft.Bot.Builder/BotStateSet.cs
1
85.0%

/libraries/Microsoft.Bot.Builder.Dialogs/Debugging/SourceRange.cs
1
46.15%

/libraries/Microsoft.Bot.Builder.Dialogs/Prompts/PromptValidatorContext.cs
1
82.35%

/libraries/Microsoft.Bot.Builder/FileTranscriptLogger.cs
1
97.34%

Totals

Change from base Build 87935:
-0.6%

Covered Lines:
8068

Relevant Lines:
10548

💛  - Coveralls

:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.Luis.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.QnA.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.ApplicationInsights.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Azure.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Dialogs.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.TemplateManager.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Configuration.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Connector.dll compared against version 4.5.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Schema.dll compared against version 4.5.3


RANDOMKEY command suggested changes

Related to issue  #254

@rkarthick15 Thanks a lot for the PR. Can you please check the above comments by reviewers and update the latest state? Let us know if you have any doubts. Feel free to discuss this in the Discord discussions


fix(web): prevent changeset actions in frontend while fixes are running

Creating a changeset in the middle of the fix flow causes inconsistency.
This PR prevents this by checking if fixes are running, and if they are
it

disables the changeset button
prevents dropping assets on the graph
disables the right click menu
Uses RecommendationProgressOverlay as the global overlay to give
status updates about actions while in flight

There are probably other paths that could create a changeset or get into
a conflict with the fix run.
A more robust solution is needed that prevents SDF itself from
performing operations that could cause inconsistency during the fix run,
but this should make for a smoother user experience.

bors r+


chore: add missing region key to aws provider in docs

Fixes https://github.com/external-secrets/external-secrets/issues/342
There were several places in docs where region was missing.

/approve

/merge


🔄 Synced file(s) with product-os/jellyfish-config

Synced local file(s) with product-os/jellyfish-config.

This PR was created automatically by the repo-file-sync-action workflow run #2170586115

@balena-ci I self certify!

@balena-ci retest


my llm is ollama, but you add ruby-openai to my Gemfile

I run this command:
rails generate langchainrb_rails:pgvector --model=Product --llm=ollama
but you add ruby-openai to my Gemfile, and ask me to setup OPENAI_API_KEY

@lukefan That seems like a bug then.

@lukefan Should be fixed now!


Playground improvements

[x]  replace chrome-like  address bar with a custom one. it should be still clear that this's address. address should be read-only

[ ] show loader while playground initializing.

https://github.com/codelab-fun/codelab/pull/939


ORC-981: Add CommentsIndentation checkstyle rule

What changes were proposed in this pull request?
This PR aims to add the CommentsIndentation checkstyle rule
Why are the changes needed?
This will fix misaligned comments and enforce it.
How was this patch tested?
Pass the CIs.

Merged to main/1.7.


HTTP/2 should forward shutdown user events to active streams

Motivation:
The following 4 user events mean that one of the sides of the parent channel is shutdown. Http2MultiplexHandler and Http2MultiplexCodec  should propagate those events to all active streams to let them identify if they still can complete or not. For example, streams that didn't receive endStream flag can decide to close if they observe one of these events. These events should still propagate forward through the parent channel pipeline.
Modifications:

Create Http2FrameStreamVisitors for ChannelInputShutdownEvent, ChannelInputShutdownReadComplete, ChannelOutputShutdownEvent, SslCloseCompletionEvent;
Propagate these events to all active streams of Http2MultiplexHandler and Http2MultiplexCodec;
Add a test to validate new behavior;

Result:
Active child streams can observe when the parent channel's input or output is shutdown or if it received close_notify.

@idelpivnitskiy thanks a lot!

Need to think about how to do something like this in 5.0 as well.


[WIP] experimental implementation

NOTE: This PR will NOT be merged.
About
This PR confirms the behavior of PelemayBackend and performs CI checks.

Execute rebase main to resolve conflicts.


MINOR: Clarify impact of num.replica.fetchers

More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.
Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.
Committer Checklist (excluded from commit message)

[x] Verify design and implementation
[ ] Verify test coverage and CI build status
[x] Verify documentation (including upgrade notes)

cc @guozhangwang @hachikuji

@hachikuji one of the flaky failing tests in this PR is Build / JDK 11 and Scala 2.13 / testListenerConnectionRateLimitWhenActualRateAboveLimit() – kafka.network.ConnectionQuotasTest  I have fixed that test at https://github.com/apache/kafka/pull/12045
Please take a look when you get a chance.


Patch versions of 2024.03 are missing at PyPI

Currently, the latest version on PyPI is 2024.03.01. However the RDKit version 2024.03.02 and 2024.03.03 already exist on GitHub.

Thanks a lot @kuelumbus for your support to provide the PyPi releases of rdkit. Very much appreciated! Are there any updates on the PR of the latest version? By now we have another new minor release 2024.03.04 and it seems to be pending / stucked as well. Any idea when you will be able to review the PR and trigger the new relesase?
Thank you very much!

@janosch-achenbach, I think the is fighting with the versioning, See PR100.

I know the updates are currently taking long. I'm having difficulties with the Windows RDKit builds, but I'm working on it and will get the update out as soon as I can.


feat(record): add API to get period time-series data

Signed-off-by: atsushi421<EMAIL_ADDRESS>This PR add API to get period time-series data in record package.
The implementation is a modification of the following parts of the plot package.
https://github.com/tier4/CARET_analyze/blob/3a1ed200e8206fe4ef7eea184325e314b597c493/src/caret_analyze/plot/bokeh/callback_info.py#L122
To reproduce: https://drive.google.com/drive/folders/1BV7G34uA7cLB6XoN9xj7NAjOboh-rxmC?usp=sharing

@atsushi421
Because https://github.com/tier4/CARET_analyze/pull/167 is merged, __init__.py occurs merge conflict.
Could you fix this, please?

@hsgwa
I have resolved conflicts. :bow:
https://github.com/tier4/CARET_analyze/pull/168/commits/daf4afde923affc79e21efef2d7bd0a7886b2739


Feature branch

made a repo
cloned it to my pc
created html,css and js files
added the linters
added the html,css and js codes
cleaned the code
added a design

@ahzamir Ostad as you said, I changes the whole project and added functionality to it. kindly, review it

@S-BLH

I can not see your partner feedback

good design
no linters errors
your project is responsive
passed freecodecamp errors

@ahzamir, Ostad my partner's says that my code does not pass freecodecamp, but my code is functionaly right and passed the freecodecamp test, please review it


CSVFormat needs work

Needs "isHandedQuoting" method in CSVFormat
add javadoc for isNormalLineEnding to reference the two setters and that this is a read-only property (same for isHandedQuoting)
other read-only getters: disableEscape, disableQuoting, alwaysQuoteStrings (reference setters and that these are read-only)
all other "boolean" variables
"copy" constructor (from Map with keys that match POJO getters/setters)
copy out to a Map also (should have ClassUtil method for this)

I would consider using "has..." in addition to "is..." since this makes more sense (grammatically) for most of these getter methods.


Unsafe legacy lifecycles will not be called for components using new component APIs.

I needed help, and I had a problem using mobx-react with an error on the console of Google Browser. The following are the mistakes:
_Warning: Unsafe legacy lifecycles will not be called for components using new component APIs.
Provider uses getDerivedStateFromProps() but also contains the following legacy lifecycles:
componentWillMount
componentWillReceiveProps
The above lifecycles should be removed. Learn more about this warning here:
https://fb.me/react-async-component-lifecycle-hooks_

I do not know why but it does not work for me:
"mobx": "^4.4.2",
"mobx-react": "5.2.8",
"react": "^16.4.1",

Tried to downgrade deps to the ones specified, still no luck: https://codesandbox.io/s/j7mvjyplww
Can you post the incriminated part of code?
Also try to disable HRM in case you're using it.

Closing for inactivity


Add filter samples to pages/Discussions

just for house keeping for a PR which demonstrates the use of the filter system in pages/Discussions.

hi,
can someone fix the discussions mock data ? i need each post to have valid tags (matching filter bar select values) and categories and project if possible.
btw, the firestore exceptions are really annoying, no fun to code here

ok then, closing. thanks for your time ..

Hey man, apologies I've been away running a workshop in South Africa so a bit slow to get to issues. I'm still really keen for the filter system (both for this project and another one I'm working on) so happy to help try get things running more smoothly for you. What exceptions are firebase throwing?
As for the mock data, I think the format of the data should be correct but awaiting on updates to display components. Although I'm guessing to test filters it might be easier for you to have some more specific data (i.e. less lorem ipsum, more actual tags etc.?)

Hey @tx4x the latest signed off prototype can be found here
https://www.figma.com/proto/OZ5xbZYR4ZKNBijrs9kPJnbu/OneArmy-Platform?node-id=458%3A0&viewport=-1426%2C242%2C0.0625&scaling=scale-down-width

This is on hold for now. Will reopen if appropriate in a close futur.


How can I clear a form instead of resetting it?

I am trying to figure out a way to clear a form with a button. Not reset it to initial values like the reset method does on FormBuilderState but instead set every field to null or empty depending on their type.
I tried calling setAttributeValue but it doesn't affect my fields:
import 'package:flutter/material.dart';
import 'package:flutter_form_builder/flutter_form_builder.dart';

class TestView extends StatefulWidget {
  TestView({Key key}) : super(key: key);

  @override
  _TestViewState createState() => _TestViewState();
}

class _TestViewState extends State<TestView> {
  final GlobalKey<FormBuilderState> _fbKey = GlobalKey<FormBuilderState>();

  bool _filterOnSurface = false;

  @override
  void initState() {
    _filterOnSurface = false;
    super.initState();
  }

  void _saveFilter() {
    if (_fbKey.currentState.saveAndValidate()) {
      print(_fbKey.currentState.value);
      Navigator.pop(context);
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Test'),
        actions: [
          IconButton(
            icon: Icon(Icons.save),
            onPressed: _saveFilter,
          ),
        ],
      ),
      body: FormBuilder(
        key: _fbKey,
        initialValue: {
          'filterOnSurface': _filterOnSurface,
          'myText': 'something',
        },
        child: SafeArea(
          child: ListView(
            children: [
              FormBuilderSwitch(
                attribute: 'filterOnSurface',
                label: Text('Filter on surface'),
                onChanged: (value) {
                  setState(() {
                    _filterOnSurface = value;
                  });
                },
              ),
              FormBuilderTextField(
                attribute: 'myText',
                decoration: InputDecoration(
                  labelText: 'My text',
                ),
              ),
            ],
          ),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        tooltip: 'Clear',
        child: Icon(Icons.delete),
        onPressed: () {
          _fbKey.currentState.setAttributeValue('filterOnSurface', false);
          _fbKey.currentState.setAttributeValue('myText', '');
        },
      ),
    );
  }
}

Have you tried FormBuilder.patchValue?

I don't see any such method in the documentation, neither in FormBuilder nor in FormBuilderState. Not even in the source code.

@sarbogast I was referring to the FormBuilderState.patchValue method.  I thought that this was available in version 3 as well as version 4, but it appears to be version 4 only.
I am a little surprised that setAttributeValue is not working for you.  I wonder if the problem is that you need to wrap the call in setState to trigger a re-build?  Like:
        onPressed: () {
          setState(() {
            _fbKey.currentState.setAttributeValue('filterOnYear', false);
            _fbKey.currentState.setAttributeValue('myText', '');
          });
        },

Oh, never mind...  It looks like a setState is embedded in the setAttributeValue call.

I can get this working fine with version 4 and using patchValue -- however, I noticed that the form has an attribute filterOnSurface , but the onPressed handler sets filterOnYear  to false.  Is that perhaps the root issue?

No that's just a detail related to the fact I tried to simplify a form that's much more complex in reality, with a lot more fields.

I corrected the code above. And when I click the floating action button, nothing happens, the fields in the form remain the same.

@sarbogast I can confirm your issue with version 3.  As I mentioned, version 4 (still pre-release) has a more elegant solution.
However, to make version 3 work, try this:
        onPressed: () {
          final fields = _fbKey.currentState.fields;
          fields['filterOnSurface'].currentState.didChange(false);
          fields['myText'].currentState.didChange('');
        },

That worked. Thanks.

FYI, I upgraded to version 4 now that it has been released, and patchValue does the trick.

On Flutter 3.3.10 (current stable channel), the solution recommended above does not work. The line final fields = _fbKey.currentState.fields reports The getter 'fields' isn't defined for the type 'FormState' (see also Make "fields" in FormState not a private member). What am I missing? I really do not want to switch to the beta channel.

I think the most idiomatic way to do this is formKey.currentState?.setState(() {                         controller.clear();                       });

On Flutter 3.3.10 (current stable channel), the solution recommended above does not work. The line final fields = _fbKey.currentState.fields reports The getter 'fields' isn't defined for the type 'FormState' (see also Make "fields" in FormState not a private member). What am I missing? I really do not want to switch to the beta channel.

Hi!
Maybe because currentState can be null?


FC2 add custom headers change all http response use FcHttpResponse

Coverage increased (+1.0%) to 89.482% when pulling 64850fa23818af304a16ef665f75ddf15ba57168 on fc2 into 3439457b1c8a0e6ef3cb5f9968d716ec17a658ca on master.

Coverage increased (+1.0%) to 89.482% when pulling c45e2f3897927ab9f07a295a0c26c4f4b15e6213 on fc2 into 3439457b1c8a0e6ef3cb5f9968d716ec17a658ca on master.

Coverage increased (+1.2%) to 89.735% when pulling c066fa5fccc2bda531dc016840b968e2cc1188df on fc2 into 3439457b1c8a0e6ef3cb5f9968d716ec17a658ca on master.

Coverage increased (+1.1%) to 89.632% when pulling 26dd27032142f6142d9f6899c5d1bdc44bf9f588 on fc2 into 3439457b1c8a0e6ef3cb5f9968d716ec17a658ca on master.

Coverage increased (+1.1%) to 89.632% when pulling<PHONE_NUMBER>7e1b891ba32657b28d2ed099c47551 on fc2 into 3439457b1c8a0e6ef3cb5f9968d716ec17a658ca on master.


--force does not force installation

○ ~ ‣ brew cask install brackets
Error: Cask for brackets is already installed. Use `--force` to install anyways.
○ ~ ‣ brew --force cask install brackets
Error: Unknown command: --force
○ ~ ‣ brew cask --force install brackets
Error: wrong constant name --force
Please report this bug:
    https://github.com/mxcl/homebrew/wiki/troubleshooting
/opt/twitter/Cellar/brew-cask/0.12.1/rubylib/cask/cli.rb:10:in `const_defined?'
/opt/twitter/Cellar/brew-cask/0.12.1/rubylib/cask/cli.rb:10:in `lookup_command'
/opt/twitter/Cellar/brew-cask/0.12.1/rubylib/cask/cli.rb:21:in `process'
/opt/twitter/bin/brew-cask.rb:6
/opt/twitter/Library/brew.rb:51:in `require'
/opt/twitter/Library/brew.rb:51:in `require?'
/opt/twitter/Library/brew.rb:93
○ ~ ‣ brew cask install --force brackets
Error: Cask for brackets is already installed. Use `--force` to install anyways.
○ ~ ‣ brew cask install brackets --force
Error: Cask for brackets is already installed. Use `--force` to install anyways.

thanks!


Dynamic dropdown options

Adds central management of available dropdown options. Each FieldDropdown stores a reference to an Options set, which is effectively an observable list of FieldDropdown.Option instances.
The set of options for known block types (i.e., loaded via JSON) can be updated via the new methods BlockFactory.updateDropDownOptions(blockType, fieldName, newOptions).

This change is

Fixes #417.

Review status: 0 of 6 files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Review status: 0 of 6 files reviewed at latest revision, 7 unresolved discussions.

blocklylib-core/src/main/java/com/google/blockly/model/BlockFactory.java, line 409 at r1 (raw file):

                String fieldName = field.getName();
                if (!TextUtils.isEmpty(blockType) && !TextUtils.isEmpty(fieldName)) {
                    updateDropDownOptions(blockType, fieldName, ((FieldDropdown) field).getOptions());

nit line length

blocklylib-core/src/main/java/com/google/blockly/model/BlockFactory.java, line 638 at r1 (raw file):

    }

    public void updateDropDownOptions(String blockType, String fieldName,

nit Dropdown is one word

blocklylib-core/src/main/java/com/google/blockly/model/BlockFactory.java, line 656 at r1 (raw file):

    public void clear() {
        mBlockTemplates.clear();
        mBlockRefs.clear();

Clear the field dropdowns.

blocklylib-core/src/main/java/com/google/blockly/model/FieldDropdown.java, line 58 at r1 (raw file):

     * The list of all options for a {@link FieldDropdown}.
     */
    public static class Options extends Observable<OptionsObserver> {

Should this implement the List interface?

blocklylib-core/src/main/java/com/google/blockly/model/FieldDropdown.java, line 70 at r1 (raw file):

        }

        public Options clone() {

JavaDoc

blocklytest/src/androidTest/java/com/google/blockly/android/ui/fieldview/BasicFieldDropdownViewTest.java, line 55 at r1 (raw file):

        mFieldDropdown = new FieldDropdown("FieldDropDown", mOptions);

        mFieldDropdown = new FieldDropdown("FieldDropDown", mOptions);

Why is this line repeated? also "Dropdown".

blocklytest/src/androidTest/java/com/google/blockly/model/FieldDropdownTest.java, line 28 at r1 (raw file):

 */
public class FieldDropdownTest extends AndroidTestCase {
    private final String FIELD_NAME = "FieldDropDown";

"FieldDropdown"

Comments from Reviewable

Review status: 0 of 6 files reviewed at latest revision, 7 unresolved discussions.

blocklylib-core/src/main/java/com/google/blockly/model/BlockFactory.java, line 409 at r1 (raw file):
Previously, RoboErikG wrote…
> nit line length

Done.

blocklylib-core/src/main/java/com/google/blockly/model/BlockFactory.java, line 638 at r1 (raw file):
Previously, RoboErikG wrote…
> nit Dropdown is one word

Done.

blocklylib-core/src/main/java/com/google/blockly/model/BlockFactory.java, line 656 at r1 (raw file):
Previously, RoboErikG wrote…
> Clear the field dropdowns.

done.

blocklylib-core/src/main/java/com/google/blockly/model/FieldDropdown.java, line 58 at r1 (raw file):
Previously, RoboErikG wrote…
> Should this implement the List interface?

I was headed in that direction, especially with respect to the method names. That said, doing so is a lot of added functionality that might not get used often. further, most would have to trigger an observer update.  I think it is better practice to update from an external list with a single observer update. Apps can get the convenience of the list update methods by keeping a list of the Option instances around.
Toward that, I'll make the update methods use List.

blocklylib-core/src/main/java/com/google/blockly/model/FieldDropdown.java, line 70 at r1 (raw file):
Previously, RoboErikG wrote…
> JavaDoc

Done.

blocklytest/src/androidTest/java/com/google/blockly/android/ui/fieldview/BasicFieldDropdownViewTest.java, line 55 at r1 (raw file):
Previously, RoboErikG wrote…
> Why is this line repeated? also "Dropdown".

Deleted second.

blocklytest/src/androidTest/java/com/google/blockly/model/FieldDropdownTest.java, line 28 at r1 (raw file):
Previously, RoboErikG wrote…
> "FieldDropdown"

Done.

Comments from Reviewable

Review status: 0 of 6 files reviewed at latest revision, 7 unresolved discussions.

Comments from Reviewable


Palette view (Feature request)

A lot of use cases in science, displaying objects that follow a given colormap is a common practice. Hence, having an up to date feature like this could be a nice addition.
Maybe integrating: https://github.com/brunoimbrizi/tweakpane-plugin-chromatic (which is outdated)
could be a good point to start.
best,
L

I don't have a plan to add a complex control like that to the Tweakpane core. You can send a pull request to the plugin, support its development with sponsorship, or fork it yourself.


pkgs.ccid lacks proper files for pcscd usage

Describe the bug
pkgs.ccid 1.6.1 is lacking these important files for pcscd usage:

etc/reader.conf.d/libccidtwin
pcsc/drivers/serial/libccidtwin.so

Steps To Reproduce
Steps to reproduce the behavior:

nix build 'nixpkgs#ccid'
tree -f ./result

Expected behavior
The files mentiond above is avaliable for usage in pcscd
A proper build of pkgs.ccid for reference:
@ nix build 'github:NixOS/nixpkgs/e08704965a52919348d9dba3570baf9c57befdf9#ccid'
@ tree -f ./result
./result
├── ./result/etc
│   └── ./result/etc/reader.conf.d
│       └── ./result/etc/reader.conf.d/libccidtwin
├── ./result/lib
│   └── ./result/lib/udev
│       └── ./result/lib/udev/rules.d
│           └── ./result/lib/udev/rules.d/92_pcscd_ccid.rules
└── ./result/pcsc
    └── ./result/pcsc/drivers
        ├── ./result/pcsc/drivers/ifd-ccid.bundle
        │   └── ./result/pcsc/drivers/ifd-ccid.bundle/Contents
        │       ├── ./result/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist
        │       └── ./result/pcsc/drivers/ifd-ccid.bundle/Contents/Linux
        │           └── ./result/pcsc/drivers/ifd-ccid.bundle/Contents/Linux/libccid.so
        └── ./result/pcsc/drivers/serial
            └── ./result/pcsc/drivers/serial/libccidtwin.so

12 directories, 5 files

Additional context
I believe this is the base bug of #349249
People usually configures scdaemon in GnuPG with disable-ccid, per the manpage, it's required so GnuPG would use PC/SC driver (and thus pcscd) for smartcard communication. However with the files mentiond above missing, pcscd wouldn't be able to detect any smartcards thus identified no smartcards
Notify maintainers

Cc @FliegendeWurst @anthonyroussel
Metadata
@ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.11.3-xanmod1, NixOS, 24.11 (Vicuna), 24.11.20241018.4c2fcb0`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.24.9`
 - nixpkgs: `/nix/store/riqkpszjqk02bi1wppfg8ip5xvh102qd-source`

Add a :+1: reaction to issues you find important.

PR: #350153


Updates for discussion

@jonschlinkert @phated
After reviewing the comments in #7 and seeing the changes that @phated made in the glob-stream tests I made some updates and ran them on my windows vm and on my osx machine.
What I think this should be doing (from the previous comments) is always unixify parts that we know are file paths (these are cwd and root) and leave the glob parts as is. By doing this and adding a custom join function, I was able to get all of the tests to pass except one.
The test that's not passing has a ./ at the beginning of the glob pattern and was handled by the path.resolve(cwd, glob) that was previously in the code. I removed the ./ from the pattern since the test was for testing that the trailing / was still on the results, but I added a new skipped test with the ./ so we can discuss.
I also updated all the expected values in the tests to be unixified since this looks like what the expected results should be (this finally clicked for me after seeing the tests in glob-stream). I think this is acceptable because this library is turning a glob pattern into an absolute glob pattern and there should not be \\ characters unless they are used for escaping.
I think we can support ./ at the beginning of glob patterns, but it gets more complicated if we want to be able to support ./ and ../ in the middle of glob patterns. AFAIK dots can be used in glob patterns in certain places, so I'm not sure exactly what should be supported here.
Let me know how this looks and if I missed something completely. I did this as a PR to the is-absolute branch so it should update the other PR if we merge it in.

@doowb thanks!

but it gets more complicated if we want to be able to support ./ and ../ in the middle of glob patterns.

../ is explicitly disallowed in glob patterns, so we're good on that. But we should probably do something like: .slice(1) and just remove the dot if the glob begins with ./. then we can join the path as normal.

@doowb thanks for putting this together.  I just installed it in glob-stream.
  I also have a failure where a / is being appended to my absolute root which causes it to end in //.  I'll push this to show the failures on travis.

Here are the failures I am seeing: https://travis-ci.org/gulpjs/glob-stream/jobs/167796658

And the Windows failures: https://ci.appveyor.com/project/gulpjs/glob-stream/build/job/qw9cb004x30e2c94

Thanks. I'll try to get this updated in a bit. I think I know what to change for the last error.

@phated I pushed up some changes.
I think you should change getBasePath to this:
function getBasePath(ourGlob, opt) {
  var parent = globParent(ourGlob);
  if (parent.slice(-1) !== '/') {
    parent += '/';
  }
  return resolveGlob(parent, opt);
}

This was the case of the last failing test because globParent was returning / then / was added on so the glob pattern passed to resolveGlob was //;

@doowb I'm not happy with all the circumstance we have to code around inside that getBasePath method.  All that logic was handled by our glob2base dependency that was removed and we've had to add tests and extra logic in glob-stream to reach feature parity.  I feel like that logic should be in this module.

@doowb actually, if we are removing the / concatenation from the globParent result (as per https://github.com/es128/glob-parent/issues/8#issuecomment-253944576) this wouldn't be a problem.

I'm not happy with all the circumstance we have to code around inside that getBasePath method.

to be fair, if I recall correctly we removed a ton of logic from glob-stream and an extra call to minimatch just to get the glob parent. I'm getting the impression that you don't remember how much more complicated that code was or how much buggier minimatch was (and still is) versus the current code

@jonschlinkert yeah, I wasn't working with glob-stream that much.  The first thing I really did was merged those changes.  I'm just trying to reduce the boilerplate but I think we are close to having a nice implementation/usage.  I just pushed up changes with the separator removed and only have 2 failing tests.

@doowb looks like we have 2 (quite strange) failures now.  See: https://travis-ci.org/gulpjs/glob-stream/jobs/167809318
My changes are at https://github.com/gulpjs/glob-stream/commit/3c4027af032841fe71131f0321baca71eb6b4f42

@phated pushed up another change. One of the tests was failing because the glob pattern was . so it was being appended to the cwd.
Another was failing because the glob was empty and the cwd was getting a / added to it.
The other ones that are failing in glob-stream are because the glob from glob-parent is just / which tells to-absolute-glob that there should be an ending /. I'm not sure if there's another way to handle this
One of the tests is failing now in glob-stream because there needs to be a slash added before test.dmc here

I'm not sure if there's another way to handle this

when / is returned, what is the path that is provided to glob-parent? (e.g. not what glob-parent returns), and what is that path when it's passed to glob-stream?

@jonschlinkert the glob is '/test.coffee' with the options { cwd: __dirname, root: __dirname + '/fixtures' }

pushed the fix suggested by @doowb - now the only failing test is the result of / being added to the root.  Is there any reason to re-add the trailing separator now that I am removing it in most cases?

If you want to keep that logic, I'd wrap the suffix logic in something like if (glob.length > 1)

Is there any reason to re-add the trailing separator now that I am removing it in most cases?

Hmm, in general I think we always want to ensure that the trailing / (forward slash only) is re-added if it existed in the initial glob pattern, since it effects how matching is performed by minimatch (and micromatch).
But I'm not sure about that specific case, I'll need to take a look. Is it the case with options.root defined?

I actually think I figured out a solution. Will revisit after I eat.

It worked!  I changed resolveGlob(globParent(ourGlob), opt); to globParent(resolveGlob(ourGlob, opt));
Switching the order makes sense because resolveGlob is supposed to be turning a glob into a fully qualified glob but globParent is removing the glob entirely.  If globParent is the last step we do, it will always resolve to no trailing slash.

Travis passing: https://travis-ci.org/gulpjs/glob-stream/builds/167825477
Windows passing: 1 failure - I think I know what it is but I'll comment inline.

This is looking pretty great to me.  Hopefully we can get all this wrapped up soon.  Thanks @doowb and @jonschlinkert!

@jonschlinkert @doowb do you guys think we can get this merged today?

@phated yeah, I'll merge this today. Should this be bumped to 2.0.0?

Should this be bumped to 2.0.0?

yes


White space fixing and other fixes

Check commits at here

I made one change to it, gonna merge it now.


Visual details of Mojave Theme

There are several minor graphical issues with the TabBar in the current version of Vienna under Mojave.
The overflow menu button is a little less high than the tabs next to it

The gray of the title bar and the selected tab are not the same. Also, there is no separation between the last tab and the overflow button (may be intentional)

The arrows in the overflow button seem not to have a good resolution, and the tip of the arrow points below the horizontal bar of the plus, making it look misplaced. Additionally, there is no separation between the overflow button and the plus button.

There are three grays, one gray gradient and white just next to one another, making it look not very clean but a little messy in dark mode

When switching back to light mode, or when coming from the background (both does not happen every time) some tabs seem grayed out. As soon as hovering with the mouse over them, they return to normal color.

@barijaona this could be your expert area ;)

Will work on it this week.

Related to MiMo42/MMTabBarView#69

Should be fixed by VIennaRSS/MMTabBarView#14

Also noticed that the credits in the About window are difficult to read.

The gray of the title bar and the selected tab are not the same.

Apparently, the intent was to mimic Safari's look on Mojave.

I have not reviewed this any more, but since there has been work and Mojave is also not current any more, I will mark the issue resolved.


概览页面CPU使用率变成 ?

。。


Fix for wiringpi library that is not linked correctly

Incorrect order of compiler flags causing the libwiringpi.so library
to not have the required linking dependencies. The cross-compilation
patch needed to be reworked in order to fix issue #105.
Signed-off-by: Aurelian Zanoschi<EMAIL_ADDRESS>
- What I did
- How I did it

Can one of the admins verify this patch?

add to whitelist

test this please

Thanks @aurelian17 for the fix. Could you please tweak the commit log so that it would keep the format used in this repos (http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines)?

There is though one more change needed. Builds got broken due to a bbappend getting invalid. This was fixed in master. Could you please rebase this PR for the build server to be able to pass the issue currently fixed in master?

Andrei, can you please push this commit to the stable pyro branch too? Unfortunately that stable branch is affected by this problem too.
Thanks in advance.

Was there any attempt to talk to the upstream to get the content of the original/updated patch integrated? It looks like it deals with very generic cross-compile related issues. I had to dig into it months ago while upgrading wiringPi to 2.44 and I forgot what a mess it was. Now, trying to review what was changed by this patch brought back that nasty feeling...

I was surprised to be honest that it didn't happen. @gizero and/or @aurelian17 can any of you work with upstream to fix this?
@aurelian17 you will need to push a PR towards pyro too in order to have it there.

At first sight the upstream project's website doesn't even seem to have a contribution guide. Googling for "site:wiringpi.com patch bug contribute" gives no match! :-() Official sources are on a self hosted git repo with no issue tracker I could find.  Let's see what's @aurelian17's opinion on that..

Hi, sorry for the delay, just returned from vacation. From my point of view is quite difficult to push this kind of patches to Gordon's repository.
Thanks, @agherzan for accepting this change, I will push it to the pyro branch too.