Ranked matches¶
When you run a Query using Xapian, what you get is a list of ranked matches.
Each match is a Xapian Document which satisfies the Query, with a weight, and the list is ordered by decreasing weight, the weight being an indicator of how good a match that Document is for the query that was run: a higher weight means a better match. The rank of each match is simply the position in the list of all matches, starting from 0. Some other search systems use the word “score” instead of weight.
The actual weight is calculated by a weighting scheme; Xapian comes with a few different ones or you can write your own, although often the default is fine. (It uses a scheme called BM25, which takes into account things like how common a matching term is in a matching document compared to in the entire database, and the lengths of different matching documents.)
Rather than having to run through the entire list of matches from the beginning, you actually ask for a sub-range of the entire list of matches, from an offset and extending for a given number of matches. Many search applications will provide the user with a way of “paging” through the matches, so the first page might be starting at 0 for 10 matches, the second page starting at 10 for 10 matches, and so on.
A page of matches in Xapian is called an MSet (for “match set”).
Alternative sort orders¶
Sometimes, rather than getting results sorted by weight, it would be more useful to get them in some other order. For example, it might be desirable to get results in order of the values stored in a date field.
To do this, you first need to store the information used for the sort in a value slot, as described in the indexing documentation. You can then tell Xapian at search time to sort by the value in that slot. It is also possible to sort by the values in several slots (e.g., to sort items which have the same value in a particular slot by the value in a secondary slot).
Finally, it is possible to ask Xapian to return the documents in order of the Xapian document ID numbers.


Before Change
"SDHWSQNLSQFFPEAISFIDEARGKNCGVLVHSLAGISRSVTVTVAYLMQKLNLSMN"
"DAYDIVKMKKSNISPNFNFMGQLLDFERTL")
else:
try:
sequence = "".join(sequence.split())
_ = sequence.isalpha()
except AttributeError:
raise TypeError("sequence must be a string")
else:
if not _:
raise ValueError("not a valid protein sequence")
headers = {"User-agent": "ProDy"}
query = [("DATABASE", "pdb"), ("ENTREZ_QUERY", "(none)"),
("PROGRAM", "blastp"),]
After Change
sequence = sequence.select("calpha and chain %s" % chain).getSequence()
elif isinstance(sequence, Sequence):
sequence = str(sequence)
elif isinstance(sequence, str):
if len(sequence) == 4 or len(sequence) == 5:
ag = parsePDB(sequence)
sequence = ag.select("calpha and chain %s" % chain).getSequence()
else:
raise TypeError("seq must be an atomic class, sequence class, or str not {0}"
.format(type(sequence)))


lib.rpki.ripeval_stats module documentation¶
lib.rpki.ripeval_stats
RIPEVal Stats¶
Created on Sep 3, 2013
@author: marcelo
-
class
rpki.ripeval_stats.
BatchValidationResults
[source]¶ Imports a RIPE Validator dump into a sqlite memory database. Allows generic SQL-like querying.
In-memory database columns are:
- uri
- origin_as
- prefix
- max_len
- valid_from, valid_until
- istart
- iend
Author<EMAIL_ADDRESS>-
query
(w_query, w_parameters)[source]¶ Runs an arbitrary SQL query against the in-memory database.
Parameters: - w_query – the query itself (what comes after the WHERE SQL keyword) using named parameters for column values, as in: ‘origin_as=:oas’
- w_parameters – an associative array with parameter values. Must be consistent with the names used for wquery, as in: {‘oas’: ‘28000’}
-
read_csv
(w_fname)[source]¶ Load ROA data from RIPE batch validator CSV output.
Parameters: w_fname – file name of the CSV file to import.
-
stats
(w_stat_name)[source]¶ Returns the value of one of several collected stats during CSV import. Returns None if w_stat_name does not exist.
Currently defined stat values are:
- faled_inserts: how many INSERT statements failed during import
- prefixes: how many prefixes were succesfully inserted into the in-memory database
Parameters: w_stat_name – named stat value.


Caches
Settings
About
Caches
SAVE CURRENT TABS
Settings
Storage used:
bytes
Clear All Caches
About
TabCache is a browser session manager for Google Chrome.


Enter a neighbourhood like “Colaba, Mumbai”, or an address like “18-20 Kasturba Gandhi Marg, Delhi”
Find your run!
This app uses walking directions provided by the Google Maps API. The API provides the following warning: “Walking directions are in beta. Use caution — This route may be missing sidewalks or pedestrian paths.”


| t01 |
fcov, FIP, gene(s), samples, 3c, RNA, mutations, cats, RT-PCR |
36 |
0 |
| t02 |
FIP, cats, AGP, antibody, serum, concentration, ifn-γ, increased, neurological, inflammatory |
35 |
0 |
| t03 |
felv, cats, risk, years, age, significant, infection, FIV, FFV, association |
34 |
0 |
| t04 |
clinical, ferret(s), disease, diagnosis, clinical_signs, case(s), lesions, signs |
45 |
1 |
| t05 |
FIPV, FECV, strain, -, 79, TGEV, 1146, serotype, fipv_infection, CCV |
26 |
0 |
| t06 |
%, feline, felis, wildcats, serum_samples, samples, FHV, herpesvirus, virus, antibodies |
27 |
0 |
| t07 |
vaccine, kittens, shedding, infected, shed, vaccinated, vaccination, virus, dose, feces |
28 |
0 |
| t08 |
type(s), II, fcov, type_i_fcov, type_i, serotypes, type_ii_fcov, antiviral, coronaviruses |
24 |
0 |
| t09 |
uveitis, aqueous, humor, specificity, dogs, eyes, rivalta, days, diagnostic, NME |
14 |
0 |
| t10 |
FCV, mycoplasma, henselae, shelter, haemominutum, respiratory, bartonella, candidatus, M., mhf |
20 |
0 |
| t11 |
T., gondii, t._gondii, horses, ecov, equine, ursolic_acid, ursolic, ecov_infection, peafowls |
19 |
0 |
| t12 |
FIV, felids, domestic, femv, wild_felids, domestic_cats, phylogenetic, urine, lions, jaguarundis |
19 |
0 |
| t13 |
cells, mab, fcwf-4, macrophages, treated_with, 2–4, factor, treated, production, enhanced |
16 |
0 |
| t14 |
skin, IL-18, ICGN, psoriatic, keratinocytes, renal, patients, fmopv, psoriasis, expression |
7 |
0 |
| t15 |
peptide(s), domain, th1, S2, linear, antibody-binding, immunodominant, epitopes, linear_immunodominant |
7 |
0 |


Books plays an important role in in our life. Books are our friends in a real sense. They demand nothing from us. They give us plenty of joy. We also learn a lot from them. They take us into a different world of imagination.
Good books improve our standard of living. They tone up our intellectual taste they make our outlook broad. They console us when we are depressed.
Books encourage us when we are defeated. They inspire us to work hard with hope and courage. They remove our ignorance and add to our knowledge. Books enrich our experience and sharpen our intellect. Thus a good book is our true friend.
A man must avoid reading bad books. They may make our life miserable. We may have to suffer because of bad books. They develop in us bad habits. They mislead and misguide. Bad books ruin our intellect. They spoil our interest in reading good and serious books. We must avoid reading such bad and cheap books because they waste our time and energy.
We should develop a healthy habit of reading books We must select the books carefully. We should read only good books. Reading good books has many advantages. Bad books spoil our character. They develop unhealthy habits in us. We should follow children and young men to read only good books. They should act upon the lessons they learn from such books. A good book is our ‘friend, philosopher and guide’.
Everybody wants pleasure in life. Man wants wealth and power for the sake of pleasure. He wants to have good health so that he may enjoy life more and more. In the modern age man seeks pleasure everywhere. All the discoveries and inventions of science are made for human happiness. Even saints and sanyasis live a life of suffering in this world for divine pleasure in the other world.
We can get pleasure from various things. Spots, games and films are some of them. But the reading of books gives us the real pleasure of life. When we read good book, we forget ourselves. We do not remember the care and anxieties of the world. We are sent into a land of beauty, imagination and happiness. So, books are the source of the greatest pleasure in life.
Well-read man is loved by all.> He is a store house of information. He knows something of everything. A well read man can be very good talker. He can entertain us with his good talks. He shows his worth at a social function. He can talk about many things. So, we do not feel dullness and boredom in the company of such persons. This is another advantage of reading books.
Books are of different kinds. Some books deal with topics of general nature. Everybody likes to read those books. There are also some books on certain topics. Such books are written for a particular set of readers. A general reader likes to read books of general nature. They give us knowledge and pleasure.
As soon as you open a book, you're taken to a different universe. You are in the mind of the author. A person you've never met, and might never meet. He might have been living in a different city, country or continent, or even a different universe. And might have lived in a different time, 50 or 100 or 500 years ago, or centuries in the future. But while reading his book, you're reading his mind, feeling what he felt. You're in the era the author lived, in the society he was a part of, talking to the people he talked to, fighting the ones he fought and loving the ones he loved. All this by just reading a book. Isn't that spectacular?


Avid learner, read about lots of stuff. Web makes me happy, imagining a world without web, no I don't want that.
Currently work in progress to fill rest of the about page.


--- layout: article title: "The Requested Operation Cannot be Performed on a File with a User-Mapped Section Open" last_updated: ---
The requested operation cannot be performed on a file with a user-mapped section openThis error can be caused by a number of issues, including client modifications, file permission errors, or an antivirus software.
Since this error can be caused by many things, please make sure that:


N$206 million cocaine trial deferred to 2020 22 Nov 2019, 08:03 by Eveline de Klerk Home \ Courts & Crime \ N$206 million cocaine trial deferred to 2020 - New Era Live


Sundram Fasteners Chairman Suresh Krishna gets 'Quality Ratna' award
"Suresh Krishna has been a role model for the society in embracing the principles of Quality," CII Institute of Quality in its Citation
by T E NarasimhanChairman of Sundram Fasteners Ltd Suresh Krishna has been presented with the 'Quality Ratna' award by trade body Confederation of Indian Industry (CII).
CII Institute of Quality in its Citation, said, "Suresh Krishna has been a role model for the society in embracing the principles of Quality, in both personal and professional life. He pioneered the constitution of the TPM Club of India in collaboration with the Japan Institute of Plant Maintenance (JIPM) in 1998 and was its first Chairman. Thanks to his leadership and contribution to the TPM/Quality movement, India today has the maximum number of TPM award winners outside Japan."


SimpleEdit
SimpleEdit
An easier and simpler way to edit Geometry Dash levels.
Work In Progress
This is coming soon


Wooden lectern. Angel in full armour standing on decoratively carved pillar and holding up the book rest above his head.
Inscription in a brass plaque on the book rest.
THIS LECTERN IS DEDICATED AS A GRATEFUL THANK-OFFERING FOR 3 SONS PRESERVED IN THE GREAT WAR 1914 - 1918 ARTHUR GERARD EAST CAPT. R.A.M.C. MICHAEL EDMUND EAST LIEUT. R.N. RUPERT MOULTRIE EAST LIEUT.  " Dan. VI. 22.
The Parish Church of St. James the Great, South Leigh, Oxfordshire.


When a file is opened in Cucumber Pro it's read straight from your source control. When you are done editing, you can save it back to the source control. There are no complicated commands to learn - just open and save.
Only people who have access to the source control repository can open files, so you can rest assured that your files are safe.
* coming soon
Cucumber Pro works with all flavors of Cucumber, the free, open source tool for executable specifications used by thousands of companies.
Cucumber has revolutionalized the software development lifecycle by melding requirements, automated testing and documentation into a cohesive one: Plain text executable specifications that validate the software.
Cucumber Pro complements Cucumber by providing a collaborative environment that is designed for product owners, business analysts, testers and programmers.
Cucumber Pro is built by the creators of Cucumber. We get executable specifications.
We are offering a hosted Cucumber Pro for companies and organizations that are comfortable using cloud-hosted services.
We understand that privacy is of great importance to many companies. Cucumber Pro will be available as an appliance that can be run on a private server.


Subscriptions
You can find all your subscriptions here. You can also add new RRS feed and make good use of them. Or if you get bored,
{% extends "base.html" %}
{% load staticfiles %}
{% load compress %}
{% load subscriptions %}
{% block title %} Subscriptions | Reread {% endblock %}
{% block extra_head %}
{% compress css %}
{% endcompress %}
{% endblock %}
{% block content %}
You can find all your subscriptions here. You can also add new RRS feed and make good use of them. Or if you get bored, Subscriptions
Add New RSS Feed


Harris scores 22 to lift Nevada past Fordham 74-60
by The Associated PressST. THOMAS, U.S. Virgin Islands (AP) — Jalen Harris had 22 points as Nevada got past Fordham 74-60 in the U.S. Virgin Islands Paradise Jam on Friday.
Harris sank 7 of 13 shots from the floor for the Wolf Pack (3-3), including 5 of 9 from 3-point range. Harris added seven assists and six rebounds. Jazz Johnson hit four 3-pointers and scored 17, while reserves K.J. Hymes and Nisre Zouzoua scored 11 apiece.
Sophomore Jalen Cobb came off the bench to score a career-high 21 points for the Rams (3-1). He hit 6 of 12 shots from the floor, including 5 of 7 from distance.
Fordham shot 35% overall but sank 10 of 24 from distance (42%). Nevada shot 45% from the floor and 42% from beyond the arc (13 of 31).
___
For more AP college basketball coverage: https://apnews.com/Collegebasketball and http://twitter.com/AP_Top25
___
Elements of this story were generated by Automated Insights, http://www.automatedinsights.com/ap, using data from STATS LLC, https://www.stats.com
The Associated Press


| Interface | Description |
|---|---|
| SetCost.OnFragmentInteractionListener |
| Class | Description |
|---|---|
| CheckNetwork |
This class checks for device's network connectivity
|
| CustomList | |
| DriverBasicInformation |
This is a class that shows the basic information about driver
|
| DriverConfirmActivity | |
| DriverHistory | |
| DriverMain |
This is a class that used for Driver, the map with current location
|
| DriverPayActivity | |
| EditProfileActivity |
This class supports user to edit their contact information
|
| EditProfileActivityD |
This class supports user to edit their contact information
|
| EnterAddressMap |
This class takes user input of addresses and show the route on the map
|
| ExampleInstrumentedTest |
Instrumented test, which will execute on an Android device.
|
| ExampleUnitTest |
Example local unit test, which will execute on the development machine (host).
|
| LocationConverter |
This class provides the conversion from input address to Latlng
and from Latlng to address string
|
| LoginActivity |
This class logs a user in if they already registered in the database
connects to the RegistrationActivity
|
| MainActivity |
This class determines if currently has a user signed in
|
| Offer |
This java file is an Object of offer request
|
| Payment |
This is a class used to handle payment for riders and drivers
It will be called at driver's activity
|
| PaymentTest | |
| PopUpMap |
Pop up the map windows to display locations and route
|
| PopUpMapTest |
Test for PopUpMap class
|
| PWresetActivity |
This class is temporaryly deprecated
|
| QRTransaction |
This class represent one transaction via QRcode
|
| QRWallet |
This is a class stores a user's transaction history
|
| QRWalletUnitTest |
Test for QRWalletUnitTest
|
| RatingActivity |
This class supports user to see the ratings they got
|
| RegistrationActivity | |
| RegistrationTest | |
| Request |
This class represents a request.
|
| RequestAdapter | |
| RequestTest |
Test for setters in Request
|
| RiderAfterAcceptRequest |
This is a class that shows the situation after the rider confirms the driver's acceptance
|
| RiderAfterAcceptRequestTest | |
| RiderHistory | |
| RiderPayActivity |
This is for rider to get the cost from database and write it into a QRcode
|
| RiderProfile | |
| RiderRatingActivity | |
| Routes |
This class implements the drawing of the routes on the map,
and can return ride info such as distance, duration and cost.
|
| SearchRide |
This class is is used to show requests that get from firebase
into a list view, and allows user to click one of them to see detailed info
|
| SetCost |
This class implements a dialog that shows the user with initial estimated fare, and provide
the option to add more on top of the estimated fare.
|
| SplashActivity | |
| TestDrawerActivity |
Intent test for DrawerActivity
|
| TestDriverBasicInfomation | |
| TestEnterAddressMap |
Test for EnterAddressMap class
|
| TestLogin |
Intent test for Login
|
| TestRiderAfterAcceptRequest | |
| TestWaitingForDriver |
Test for WaitingForDriver class
|
| UserProfile |
This is a class creates a User Profile object
|
| Utils |
This class wraps FirebaseDatabase in a singleton
|
| WaitingForDriver |
The class is the waiting page for the rider, it shows the pick up location and destination,
and the cost of the ride.
|
| WaitingForRider |
waiting for the rider response
|
| WaitingForRiderTest |
Test for WaitingForDriver class
|


deployed
by None at 2021-09-21 15:42:12.referenced
by None at 2021-09-21 15:43:50.merged
by None at 2021-09-21 15:43:50.closed
by None at 2021-09-21 15:43:50.head_ref_deleted
by None at 2021-09-21 15:43:51.closed
by None at 2021-09-21 12:34:10.referenced
by Peter Green at 2021-09-21 13:45:31.merged
by Peter Green at 2021-09-21 13:45:31.closed
by Peter Green at 2021-09-21 13:45:32.referenced
by Peter Green at 2021-09-21 13:46:13.merged
by Peter Green at 2021-09-21 13:46:13.closed
by Peter Green at 2021-09-21 13:46:13.POLineCancellationNotice was originally configured without available input data; XPaths need to be adjusted to reflect actual structure of the XML
Fixed. PO number doesn't come through with the XML. Opening a new issue.
assigned
by None at 2021-09-21 12:41:42.renamed
by None at 2021-09-21 12:42:52.closed
by None at 2021-09-21 13:48:35.To confirm: config > General > letters > PO Line cancellation letter > Letter Examples Tab > POLineCancellationLetter - 09/20/2021 13:21:34 EDT
assigned
by None at 2021-09-21 13:54:30.assigned
by None at 2021-09-21 13:55:06.Hi
Here are the messages which need to be associated with the Loan Status Notice letter. Mark opened a ticket (#175) for updating the behavior so that recall messages do not continue to go out to patrons with extended due dates. It’s very confusing and it’s a customer service issue at this point. I’d appreciate it if this could be updated soon.
The subject of the notice letter should be “Recall or other due date change”.
I marked several NA (#3,4,6) because we don’t intend to use those. We do want to instead use #2 when a recall is cancelled. I assume that can be set up in our configuration if it isn’t already.
1.message (the message for when the due date is changed without a recall): The library has changed the due date of your borrowed item. See details below for the new due date. 2.cancelrecalldatechange (for when a due date is reverted due to a recall being cancelled): The recall that was placed on your borrowed item has been cancelled, and the original due date has been restored. See details below for the due date. 3.NA: cancelrecallrenew (for when a recall is cancelled and the loan to the original patron is renewed): The recall that was placed on your borrowed item has been cancelled. The loan has been renewed. See details below for the due date. 4.NA: cancelrecallnodatechange (for when a recall is cancelled but you don't change the shortened due date): The recall that was placed on your borrowed item has been cancelled. There is no change in its due date 5.recallanddatechange (for when a recall shortens a due date): The following item, currently loaned to you, has been recalled for course reserve or another borrower. Please return it by the new due date to avoid recall fines. 6.NA: recallandnodatechange (for when a recall does not modify the due date, likely not used): Your borrowed item has been recalled. There is no change in its due date.
Thank you, Joan
labeled
by None at 2021-09-21 13:21:39.labeled
by None at 2021-09-21 13:21:39.closed
by None at 2021-09-21 14:37:34.deployed
by None at 2021-09-21 14:11:55.head_ref_force_pushed
by None at 2021-09-21 14:15:24.referenced
by None at 2021-09-21 14:37:33.merged
by None at 2021-09-21 14:37:33.closed
by None at 2021-09-21 14:37:34.head_ref_deleted
by None at 2021-09-21 14:37:34.closed
by None at 2021-09-21 19:07:33.Also, right-align box#
renamed
by None at 2021-09-21 11:56:35.closed
by None at 2021-09-21 16:53:53.reopened
by None at 2021-09-21 19:08:57.unlabeled
by None at 2021-09-21 19:57:09.closed
by None at 2021-09-21 19:57:33.assigned
by None at 2021-09-21 13:34:56.labeled
by None at 2021-09-21 19:58:19.review_requested
by None at 2021-09-21 19:31:57.review_requested
by None at 2021-09-21 19:31:57.referenced
by Peter Green at 2021-09-21 20:04:21.merged
by Peter Green at 2021-09-21 20:04:21.closed
by Peter Green at 2021-09-21 20:04:21.milestoned
by Kate Lynch at 2021-09-21 14:24:14.labeled
by Kate Lynch at 2021-09-21 14:30:20.head_ref_deleted
by Bess Sadler at 2021-09-21 16:42:51.The values in the subject headings mappings spreadsheet linked in the ticket are a work in progress, but the values there can be used for development of the synonym file.
(Also sorry; accidentally hit the "close with comment" button while aiming for "comment" button.)
closed
by Kate Lynch at 2021-09-21 14:15:01.reopened
by Kate Lynch at 2021-09-21 14:15:14.labeled
by Kate Lynch at 2021-09-21 14:16:35.assigned
by Bess Sadler at 2021-09-21 14:47:52.Notice that the value in the 856
(http://arks.princeton.edu/ark:/88435/zk51vm39g) resolves to https://catalog.princeton.edu/catalog/9956630863506421#view and link does display the viewer.
labeled
by Trey Pendragon at 2021-09-21 16:54:08.There's context here https://github.com/projectblacklight/spotlight/pull/2625 and also here https://github.com/projectblacklight/spotlight/releases/tag/v3.0.0
renamed
by None at 2021-09-21 12:59:58.assigned
by Eliot Jordan at 2021-09-21 16:20:58.assigned
by None at 2021-09-21 16:21:07.assigned
by Shaun Ellis at 2021-09-21 16:55:28.unlabeled
by Trey Pendragon at 2021-09-21 17:33:23.labeled
by Trey Pendragon at 2021-09-21 17:34:02.Will be done as part of #839.
closed
by Trey Pendragon at 2021-09-21 17:44:34.Date Range value isn't being parsed into a Solr document correctly. Solr is indexing the date range as a nested document without an ID.
labeled
by Trey Pendragon at 2021-09-21 20:50:23.labeled
by Trey Pendragon at 2021-09-21 20:53:35.labeled
by Trey Pendragon at 2021-09-21 20:57:14.assigned
by Trey Pendragon at 2021-09-21 21:37:49.referenced
by Trey Pendragon at 2021-09-21 21:45:12.labeled
by Trey Pendragon at 2021-09-21 20:48:01.assigned
by Trey Pendragon at 2021-09-21 21:49:29.referenced
by Trey Pendragon at 2021-09-21 21:57:41.labeled
by Trey Pendragon at 2021-09-21 20:55:33.assigned
by Trey Pendragon at 2021-09-21 23:03:58.labeled
by Trey Pendragon at 2021-09-21 23:08:39.labeled
by Trey Pendragon at 2021-09-21 23:08:52.labeled
by Trey Pendragon at 2021-09-21 23:09:07.milestoned
by Kate Lynch at 2021-09-21 13:33:20.assigned
by Kate Lynch at 2021-09-21 13:33:20.milestoned
by Bess Sadler at 2021-09-21 13:10:32.unlabeled
by James R. Griffin III at 2021-09-21 13:14:36.labeled
by James R. Griffin III at 2021-09-21 13:14:46.Currently, there is the following disparity between the dev
and staging
environments:
Sep 21, 2021 10:06:58 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.104
Sep 21, 2021 10:06:58 AM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying deployment descriptor [/home/dspace/apache-tomcat-7.0.104/conf/Catalina/localhost/rt4ds.xml]
Sep 21, 2021 10:16:14 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [/mnt/disks/oarstagingdatastore/prod-copy/dspace/webapps/rt4ds]
Sep 21, 2021 10:16:14 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [/mnt/disks/oarstagingdatastore/prod-copy/dspace/webapps/rt4ds] has finished in [70] ms
...where /home/dspace/apache-tomcat-7.0.104/conf/Catalina/localhost/rt4ds.xml
is located only on the dev
environment server, and may need to be added to https://github.com/pulibrary/princeton_ansible
Manually adding this file with the following contents restored access to rt4ds
for the staging
environment:
<Context docBase="/home/dspace/dspace/webapps.static/rt4ds" path="/rt4ds">
</Context>
While https://github.com/pulibrary/princeton_ansible/tree/oar-rt4ds-deployment-jrgriffiniii advances this, while testing the provisioning on the dev
environment resulted in a number of errors, resulting in the need to address the following:
pulsys@gcp-oar-dev1:~$ sudo chown -R dspace:dspace /home/dspace/scripts/.aliases
pulsys@gcp-oar-dev1:~$ sudo chown -R dspace:dspace /home/dspace/scripts/.aliases.local
[...]
dspace@gcp-oar-dev1:~$ ls -lta /etc
total 920
drw-r--r-- 8 dspace dspace 4096 Sep 21 13:14 hosting
[...]
pulsys@gcp-oar-dev1:~$ sudo chmod 755 /etc/hosting
https://git.atmire.com/clients/princeton-5/-/tree/jrgriffiniii-oar-lisd-form-updates-test tracks the changes for the Google Form bugs and links
https://git.atmire.com/clients/princeton-5/-/merge_requests/46 advances the rebuild for the OAR code base with rt4ds.
unlabeled
by James R. Griffin III at 2021-09-21 13:14:21.labeled
by None at 2021-09-21 02:46:17.labeled
by None at 2021-09-21 02:46:17.labeled
by None at 2021-09-21 05:33:46.labeled
by None at 2021-09-21 05:33:46.closing this. selection of arks lead to DPUL site. Should be all good.
closed
by Kim Leaman at 2021-09-21 14:02:55.labeled
by None at 2021-09-21 14:11:42.deployed
by None at 2021-09-21 14:04:35.referenced
by None at 2021-09-21 14:16:01.merged
by None at 2021-09-21 14:16:01.closed
by None at 2021-09-21 14:16:02.head_ref_deleted
by None at 2021-09-21 14:16:02.labeled
by None at 2021-09-21 14:38:39.Thanks for testing @kelea99 , I'm dropping your video here as validation: https://drive.google.com/file/d/1rkwA2JVEhh5q_jLgM7r3ak41KlN7YJj6/view?usp=sharing_eil_m&ts=6149fae0
I think the bracket feature works, but it only brackets the left or right and you have to select it afterwards. If this is not what's intended, let's open a new ticket.
I know there are some instances (rare) that have all the pages bracketed, but it has only ever been for one up pagination of some special collections item(s) and the bracketing works fine there. I do not know of any use cases with two up bracketing for the entire volume/item.
closed
by None at 2021-09-21 14:16:02.mentioned
by Kim Leaman at 2021-09-21 15:52:10.subscribed
by Kim Leaman at 2021-09-21 15:52:10.reopened
by Shaun Ellis at 2021-09-21 15:52:19.renamed
by Trey Pendragon at 2021-09-21 17:10:37.renamed
by Trey Pendragon at 2021-09-21 17:10:45.labeled
by Trey Pendragon at 2021-09-21 17:25:15.It looks like we have a bunch of resources where the date_range was ingested into a date
field.
The logic to present the date_range is correct in the linked_simple_resource
. Perhaps we should migrate these fields?
labeled
by None at 2021-09-21 19:46:05.assigned
by None at 2021-09-21 19:46:28.assigned
by Eliot Jordan at 2021-09-21 19:46:33.renamed
by None at 2021-09-21 19:47:44.referenced
by Kevin Reiss at 2021-09-21 19:58:35.merged
by Kevin Reiss at 2021-09-21 19:58:35.closed
by Kevin Reiss at 2021-09-21 19:58:36.closed
by Kevin Reiss at 2021-09-21 19:58:36.referenced
by Kevin Reiss at 2021-09-21 18:11:56.merged
by Kevin Reiss at 2021-09-21 18:11:56.closed
by Kevin Reiss at 2021-09-21 18:11:56.head_ref_deleted
by Kevin Reiss at 2021-09-21 18:11:57.deployed
by None at 2021-09-21 18:32:08.labeled
by None at 2021-09-21 04:06:19.unlabeled
by James R. Griffin III at 2021-09-21 13:15:10.labeled
by James R. Griffin III at 2021-09-21 13:15:10.labeled
by None at 2021-09-21 02:23:42.labeled
by None at 2021-09-21 02:23:42.milestoned
by Bess Sadler at 2021-09-21 14:45:23.assigned
by Bess Sadler at 2021-09-21 14:47:28.deployed
by None at 2021-09-21 14:50:44.referenced
by Bess Sadler at 2021-09-21 14:53:58.merged
by Bess Sadler at 2021-09-21 14:53:58.closed
by Bess Sadler at 2021-09-21 14:53:59.head_ref_deleted
by Bess Sadler at 2021-09-21 14:53:59.closed
by Bess Sadler at 2021-09-21 16:41:23.head_ref_deleted
by Bess Sadler at 2021-09-21 17:15:31.closed
by Hector Correa at 2021-09-21 21:14:57.head_ref_force_pushed
by Bess Sadler at 2021-09-21 14:34:52.referenced
by Hector Correa at 2021-09-21 21:14:56.merged
by Hector Correa at 2021-09-21 21:14:56.closed
by Hector Correa at 2021-09-21 21:14:57.head_ref_deleted
by Hector Correa at 2021-09-21 21:14:58.milestoned
by Hector Correa at 2021-09-21 21:17:09.These updated mappings look good to me @hectorcorrea, I think one of the failing tests related to the hathiurl can be removed since we deprecated ETAS.
@kevinreiss Thanks for the feedback. I had to update one of the fixtures to include the new Alma library/holding codes (instead of Voyager codes) but that caused a bunch of other tests (unrelated to Stackmap but that use the location codes) to break. Hunting them down and tracing what the equivalent Alma code should be took me a bit longer than I thought but I think this is finally ready.
mentioned
by Hector Correa at 2021-09-21 00:48:18.subscribed
by Hector Correa at 2021-09-21 00:48:18.mentioned
by Kevin Reiss at 2021-09-21 21:12:10.subscribed
by Kevin Reiss at 2021-09-21 21:12:10.Used browsertrix-crawler to do a test crawl of the derridas margins site from my laptop. It ran for ~ 4 hours (fwiw I was also using the laptop for other things during this time).
Here's how I ran it and the output I got:
% docker run -v $PWD/crawls:/crawls/ -it webrecorder/browsertrix-crawler crawl --url https://derridas-margins.princeton.edu/ --generateWACZ --text --collection derridasmargins-test
Text Extraction: Enabled
Load timeout for https://derridas-margins.princeton.edu/library/husserl-der-ursprung-der-geometrie-als-intentional-historisches-problem-1962-B/gallery/p-220-inside-back-cover-insertion-a-recto/ TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/interventions/?annotation_type=line&page=11 TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/interventions/?annotation_type=marginal+mark&page=30 TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/interventions/?page=16&annotation_type=underlining TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/references/?page=54 TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/interventions/?page=33&annotation_type=line TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/references/?page=33 TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
Load timeout for https://derridas-margins.princeton.edu/interventions/?page=51 TimeoutError: Navigation timeout of 90000 ms exceeded
at /app/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js:106:111
== Start: 2021-09-21 16:31:33.659
== Now: 2021-09-21 20:27:55.506 (running for 3.9 hours)
== Progress: 2868 / 2868 (100.00%), errors: 1 (0.03%)
== Remaining: 0.0 ms (@ 0.20 pages/second)
== Sys. load: 37.0% CPU / 79.7% memory
== Workers: 1
#0 IDLE
Waiting to ensure pending data is written to WARCs...
Generating WACZ
Validating passed pages.jsonl file
Reading and Indexing All WARCs
Writing archives...
Generating page index from passed pages...
Header detected in the passed pages.jsonl file
Generating datapackage.json
Generating datapackage-digest.json
Here are the sizes of the .warc.gz
files that were generated:
% ls -l crawls/collections/derridasmargins-test/archive/
total 1657512
-rw-r--r-- 1 rkoeser staff 67718672 Sep 21 16:25 rec-20210921163135141911-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 86732864 Sep 21 16:27 rec-20210921163135316862-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 49708883 Sep 21 16:23 rec-20210921163135356001-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 103751541 Sep 21 16:25 rec-20210921163135484484-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 138867254 Sep 21 16:27 rec-20210921163135498226-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 121607803 Sep 21 16:27 rec-20210921163135546143-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 145825162 Sep 21 16:27 rec-20210921163135567093-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 59891655 Sep 21 16:19 rec-20210921163136049692-23b1f8eb3af7.warc.gz
or same in human readable sizes:
% ls -lh crawls/collections/derridasmargins-test/archive/
total 1657512
-rw-r--r-- 1 rkoeser staff 65M Sep 21 16:25 rec-20210921163135141911-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 83M Sep 21 16:27 rec-20210921163135316862-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 47M Sep 21 16:23 rec-20210921163135356001-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 99M Sep 21 16:25 rec-20210921163135484484-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 132M Sep 21 16:27 rec-20210921163135498226-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 116M Sep 21 16:27 rec-20210921163135546143-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 139M Sep 21 16:27 rec-20210921163135567093-23b1f8eb3af7.warc.gz
-rw-r--r-- 1 rkoeser staff 57M Sep 21 16:19 rec-20210921163136049692-23b1f8eb3af7.warc.gz
looks like the entire collection comes to ~ 1.5GB:
% du -sh crawls/collections/derridasmargins-test/
1.5G crawls/collections/derridasmargins-test/
but based on this output I think the wacz file may be duplicating the content in the archive warc.gz files:
% du -sh crawls/collections/derridasmargins-test/*
809M crawls/collections/derridasmargins-test/archive
752M crawls/collections/derridasmargins-test/derridasmargins-test.wacz
0B crawls/collections/derridasmargins-test/indexes
7.1M crawls/collections/derridasmargins-test/pages
0B crawls/collections/derridasmargins-test/static
0B crawls/collections/derridasmargins-test/templates
I haven't investigated yet what urls are included or tried to play the archive back with pywb — if this includes IIIF image urls that we'll be able to exclude then the final archive will be smaller. (Although if there's any missing content then vice versa)
assigned
by Rebecca Sutton Koeser at 2021-09-21 14:04:46.assigned
by Francis Kayiwa at 2021-09-21 14:04:49.assigned
by Francis Kayiwa at 2021-09-21 13:08:34.


CITROMA- magnesium citrate liquid
Duane Reade
Disclaimer: Most OTC drugs are not reviewed and approved by FDA, however they may be marketed if they comply with applicable regulations and policies. FDA has not evaluated whether this product complies.
for relief of occasional constipation (irregularity). Generally produces bowel movement in 1/2 to 6 hours
taking any other drug. Take this product 2 or more hours before or after other drugs. Laxatives may affect how other drugs work.
ask a doctor if you have rectal bleeding or failure to have a bowel movement after use. These could be signs of a serious condition.
In case of overdose, get medical help or contact a Poison Control Center right away
adults and children 12 years of age and over - 6.5 to 10 fl oz in 24 hours
children 6 to under 12 years of age - 3 to 7 fl oz maximum 7 fl oz in 24 hours
children 2 to under 6 years of age - 2 to 3 fl oz maximum of 3 fl oz in 24 hours
children under 2 years of age - ask a doctor
discard unused product within 24 hours of opening bottle
cherry flavor, citric acid, FD+C red #40, potassium bicarbonate, sodium saccharin, water purified
UNIQUELY NY DR SINCE 1960
magnesium citrate
oral solution / saline laxative
Do not use if tamper evident twist off caps
is missing, broken or separated from neckring
10 FL OZ (296 mL)
|
CITROMA
magesium citrate liquid | ||||||||||||||||
| ||||||||||||||||
| ||||||||||||||||
| ||||||||||||||||
| ||||||||||||||||
|
| Labeler - Duane Reade (011988995) |
| Registrant - Vi-Jon (790752542) |
| Establishment | |||
| Name | Address | ID/FEI | Business Operations |
|---|---|---|---|
| Vi-Jon | 790752542 | manufacture(67732-693) |


Nutritional Value for Your Sandwich
Ingredients: Allergy Information:
Print/Export Nutritional Data
Start over


 Nisi qui praesentium fuga
-
Department ofBarfoo
End of list.
keyword-list with links
Lorem ipsum dolor sit amet:
End of list.


Searching inside a single HistoryMaker is done from the HistoryMaker's landing page. For example, suppose you are on the landing page for Barack Obama. You wish to search inside his stories for "Michelle" and can do so by using the controls on the top of the landing page.
For mobile (narrow width browsers), click the search icon (magnifying glass) and proceed to "Search this person's stories" entry area. Type the word Michelle into the entry area and either also type the Enter/Return key or tap/click the "Search" (magnifying glass) button.
For widescreen browsers, you will have a "Search this person's stories" entry box and can type there directly. Type the word Michelle into the entry area and either also type the Enter/Return key or click/tap the "Search" (magnifying glass) button.
You will get a set of stories from Barack Obama which mention "Michelle": story results for "Michelle" query within just Barack Obama.


Quite "low level". Its used by both Coypu and Canopy. using Selenium is quite verbose and there is a lot to think about when writing the tests.
I don't know it, Henrik does? :)
browser.Visit("http://mysite");
browser.ClickButton("#TheButton");
browser.FindId("MyInputBox").Text = "some text";
browser.ClickButton(".anotherButton");
Assert.AreEqual("You enetered: some text", browser.FindId(".resultBox").Text)
F# DSL language on top of selenium
url "http://mysite"
click "#TheButton"
"#MyInputBox" << "some text"
click ".anotherButton"
".resultBox" == "You entered: some text"
Microsoft framework, I haven't seen much talk about it
I haven't yet tried it. Seems to run in the same process as the web an more for api/html testing then full ui testing?
module MyPages
let myPagesUrl = "/sv/my-pages"
let invoiceHeaderPayButton = "invoice-header .column button"
let invoiceDetailPayButton = "invoice-details .paylater"
let WelcomePopup = "welcome-page"
let DirectDebitWelcomePopup = "#direct-debit-welcome"
let RegisterForDirectDebitButton = "#welcome-button"
let closeWelcomPopupButton = ".close-reveal-modal"
let invoice = "invoice"
let invoiceDetails = "invoice-details"
let ocr = ".ocr"
let partPayButton = ".info-box-partpay"
let postponeDueDate = ".postponeduedate"
let personWitoutMandate () =
context "Given PersonWithoutMandate When going to MyPages"
before (fun _ -> loginAs personalNumberWithoutMandate)
"Should show welcome popup" &&& fun _->
displayed DirectDebitWelcomePopup
element DirectDebitWelcomePopup |> elementWithin RegisterForDirectDebitButton |> displayed
"Should close welcome popup" &&& fun _->
displayed DirectDebitWelcomePopup
element DirectDebitWelcomePopup |> elementWithin closeWelcomPopupButton |> click
waitForElementToBeRemoved DirectDebitWelcomePopup
"Should not show welcome popup twice" &&& fun _->
displayed <| element DirectDebitWelcomePopup
element DirectDebitWelcomePopup |> elementWithin closeWelcomPopupButton |> click
waitForElementToBeRemoved DirectDebitWelcomePopup
goTo myPagesUrl
waitForElementToBeRemoved DirectDebitWelcomePopup
context "Given PersonWithoutMandate When going to MyPages"
before (fun _ -> loginAs personalNumberWithoutMandate)
Context opens up a new test context.
Context = TestSuite in Selenium
Before is a function on a testsuite
"Should show welcome popup" &&& fun _-> ()
Is the same as
ntest "Should show welcome popup" (fun _-> () )
The reason is that &&&
is an operator.To call a function in F# give the name of the function then the parameters.
To call a function in C# you give the name of the funtion then paranthesis and separate each parameter by comma and then end paranthesis.
Ohh so verbose. :)
displayed MyPages.DirectDebitWelcomePopup
Checks that the DirectDebitWelcomePopup is shown.
Could of course be written as
displayed "#direct-debit-welcome"
But i think the first is more clear. MyPages could be made reduant as well if we open upp MyPages before. Just as we do in
C# with using
element DirectDebitWelcomePopup
|> elementWithin RegisterForDirectDebitButton
|> displayed
Could be written as:
let popup = element DirectDebitWelcomePopup
let registrationButton = elementWithin RegisterForDirectDebitButton popup
displayed registrationButton
module Utils
open canopy
let baseUrl = "http://qliro2-development.dev-web.qliro.local";
let goTo page =
baseUrl + page |> url
Then we can use them on other places like this
open Utils
goTo "/SomePage/Somewhere"
Th same in c# would be simular to:
Utils.goTo("/SomePage/Somewhere")
Functions are first class values in f#
That means that there is pretty much difference between a constant and a function
You use the keyword "let" to assigne a value/function
Thats fine but if you use something like this
let printWorld = printfn "World"
let printHello = printfn "Hello"
printHello
printWorld
what you get is
World
Hello
val printWorld : unit = ()
val printHello : unit = ()
val it : unit = ()
let printWorld () = printfn "World"
let printHello () = printfn "Hello"
printHello ()
printWorld ()
what you get is
Hello
World
val printWorld : unit -> unit
val printHello : unit -> unit
val it : unit = ()
open System
type Person = {Firstname : string; Lastname : string; Birthdate : DateTime Option}
let roffe = {Firstname = "Richard"; Lastname = "Lineberg"; Birthdate = Some (DateTime.Parse("1980-04-12")) }
let poffe = {Firstname = "Richard"; Lastname = "Lineberg"; Birthdate = None}
let printPerson p =
printfn "Name: %s %s born on %A" p.Firstname p.Lastname p.Birthdate
printPerson roffe
printPerson poffe
Would print:
let waitForElementToBeRemoved selector =
waitFor (fun _ ->
match someElement selector with
| None -> true
| Some _ -> false
)


System Architect Picture "Performer Selected Activity"
Parent Diagram:
Activity State
(OMT Object Model)


|
VK
|
Mode in which one could record events sent to remote device. More...
#include <RecordMode.h>
Public Member Functions | |
| RecordMode (BlockingQueue< std::shared_ptr< IMessage >> &que, boost::program_options::variables_map const &vm) | |
| RecordMode (RecordMode const &r) | |
| void | Run () override |
| Public Member Functions inherited from FreeRunningMode | |
| FreeRunningMode (BlockingQueue< std::shared_ptr< IMessage >> &que, boost::program_options::variables_map const &map) | |
| FreeRunningMode (const FreeRunningMode &r) | |
| FreeRunningMode & | operator = (FreeRunningMode const &r) |
| Public Member Functions inherited from IRunMode | |
| virtual bool | RequiresConnection () |
| Specifies whether the TCP Thread should be run. | |
Additional Inherited Members | |
| Public Typedefs inherited from IRunMode | |
| typedef LRESULT (__stdcall * | KeyboardHookProc) (int, WPARAM, LPARAM) |
| typedef LRESULT (__stdcall * | MouseHookProc) (int, WPARAM, LPARAM) |
| Public Attributes inherited from IRunMode | |
| KeyboardHookProc | keyhookproc |
| Pointer to the kyboard hook function. | |
| MouseHookProc | mousehookproc |
| Pointer to the mouse hook function. | |
Mode in which one could record events sent to remote device.
| RecordMode::RecordMode | ( | BlockingQueue< std::shared_ptr< IMessage >> & | que, |
| boost::program_options::variables_map const & | vm | ||
| ) |
| [in] | que | Message queue used to send by TCP Thread |
| [in] | vm | Map containing supplied command options |


Object in Use
The objective of this assignment was to create a graphic translation of a chosen household object using Illustrator then juxtaposing it with "real" objects. It's important that the objects don't touch but rather have the viewers make the connection themselves. For instance, the wine opener and the Heineken bottle never visually touch, however, the viewer can make the connection that the top part of the wine opener removes the bottle cap.
Object Comparisons
The objective of this assignment was to compare the graphic translation with real life objects. The important thing to note here is that there should be no actual relation between the object and the graphic translation except appearance wise. The purpose of this assignment is to learn how to see something differently. Even though a wine opener and a teletubby have nothing in common, they share a visual similarity when placed next to one another.


| Methods' Summary |
| getContext |
returns the underlying deployment context, that is,
the name of the repository..
|
| getSupportedPackageTypes |
gets the supported XPackageTypeInfos.
|
| createAbortChannel |
creates a command channel to be used to asynchronously abort a command.
|
| addPackage |
adds an UNO package.
The properties argument is currently only used to suppress the license information
for shared extensions.
|
| importExtension |
adds an extension.
This copies the extension. If it was from the same repository,
which is represented by this XPackageManager insterface, then
nothing happens.
|
| removePackage |
removes an UNO package.
|
| getDeployedPackage |
gets a deployed package.
|
| getDeployedPackages |
gets all currently deployed packages.
|
| reinstallDeployedPackages |
Expert feature: erases the underlying registry cache and reinstalls
all previously added packages. Please keep in mind that all
registration status get lost.
|
| isReadOnly |
indicates that this implementation cannot be used for tasks
which require write access to the location where the extensions
are installed.
|
| synchronize |
synchronizes the extension database with the contents of the extensions
folder.
Added extensions will be added to the database and removed extensions
will be removed from the database.
|
| getExtensionsWithUnacceptedLicenses |
returns all extensions which are currently not in use
because the user did not accept the license.
The function will not return any object for the user repository, because
a user extension will not be kept in the user repository if its license
is declined. Only extensions which are registered at start-up of OOo,
that is, shared and bundled extensions, can be returned.
Extensions which allow the license to be suppressed, that is, it does not
need to be displayed, and which are installed with the corresponding option,
are also not returned.
|
| checkPrerequisites |
checks if the extension can be used.
The extension must be managed by this package manager, that is, it must
be recorded in its database. The package manager calls
XPackage::checkPrerequisites and updates its data base with the
result. The result, which is from Prerequisites will be
returned.
|
| Methods' Details |
getContext
- Description
- returns the underlying deployment context, that is,
the name of the repository..
- Returns
- underlying deployment context
|
|
| getSupportedPackageTypes
|
createAbortChannel
- Description
- creates a command channel to be used to asynchronously abort a command.
- Returns
- abort channel
|
|
addPackage
- Description
- adds an UNO package.
The properties argument is currently only used to suppress the license information
for shared extensions.
- Parameter url
- package URL, must be UCB conform
- Parameter properties
- additional properties, for example, that the license is to be
suppressed (if supported by the extension)
- Parameter mediaType
- media-type of package, empty string if to be detected
- Parameter xAbortChannel
- abort channel to asynchronously abort the adding process,
or null
- Parameter xCmdEnv
- command environment for error and progress handling
- Returns
- XPackage handle
|
|
importExtension
- Description
- adds an extension.
This copies the extension. If it was from the same repository,
which is represented by this XPackageManager insterface, then
nothing happens.
- Parameter extension
- Parameter xAbortChannel
- abort channel to asynchronously abort the adding process,
or null
- Parameter xCmdEnv
- command environment for error and progress handling
- Returns
- XPackage handle
|
|
removePackage
- Description
- removes an UNO package.
- Parameter identifier
- package identifier
- Parameter fileName
- package file name
- Parameter xAbortChannel
- abort channel to asynchronously abort the removing process,
or null
- Parameter xCmdEnv
- command environment for error and progress handling
|
|
getDeployedPackage
- Description
- gets a deployed package.
- Parameter identifier
- package identifier
- Parameter fileName
- package file name
- Parameter xCmdEnv
- command environment for error and progress handling
- Returns
- XPackage handle
|
|
getDeployedPackages
- Description
- gets all currently deployed packages.
- Parameter xAbortChannel
- abort channel to asynchronously abort the removing process,
or null
- Parameter xCmdEnv
- command environment for error and progress handling
- Returns
- all currently deployed packages
|
|
reinstallDeployedPackages
- Description
- Expert feature: erases the underlying registry cache and reinstalls
all previously added packages. Please keep in mind that all
registration status get lost.
Please use this in case of suspected cache inconsistencies only.
- Parameter xAbortChannel
- abort channel to asynchronously abort the adding process
- Parameter xCmdEnv
- command environment for error and progress handling
|
|
isReadOnly
- Description
- indicates that this implementation cannot be used for tasks
which require write access to the location where the extensions
are installed.
Normally one would call a method and handle the exception
if writing failed. However, a GUI interface may need to know beforehand
if writing is allowed. For example, the Extension Manager dialog
needs to enable / disable the Add button depending if the user has
write permission. Only the XPackageManager implementation knows the
location of the installed extensions. Therefore it is not possible
to check "externally" for write permission.
|
|
synchronize
- Description
- synchronizes the extension database with the contents of the extensions
folder.
Added extensions will be added to the database and removed extensions
will be removed from the database.
- Parameter xAddedExtension
- new extensions which may need to be registered.
- Parameter removed
- extensions which must be revoked
- Returns
- If true - then at least one extension was removed or added. Otherwise
nothing was chaned.
|
|
getExtensionsWithUnacceptedLicenses
- Description
- returns all extensions which are currently not in use
because the user did not accept the license.
The function will not return any object for the user repository, because
a user extension will not be kept in the user repository if its license
is declined. Only extensions which are registered at start-up of OOo,
that is, shared and bundled extensions, can be returned.
Extensions which allow the license to be suppressed, that is, it does not
need to be displayed, and which are installed with the corresponding option,
are also not returned.
|
|
checkPrerequisites
- Description
- checks if the extension can be used.
The extension must be managed by this package manager, that is, it must
be recorded in its database. The package manager calls
XPackage::checkPrerequisites and updates its data base with the
result. The result, which is from Prerequisites will be
returned.
|
|
Copyright © 2013, The Apache Software Foundation, Licensed under the Apache License, Version 2.0. Apache, the Apache feather logo, Apache OpenOffice and OpenOffice.org are trademarks of The Apache Software Foundation. Other names may be trademarks of their respective owners.


This class can only be used in combination with [page:WebGLRenderer.copyFramebufferToTexture]().
const pixelRatio = window.devicePixelRatio;
const textureSize = 128 * pixelRatio;
// instantiate a framebuffer texture
const frameTexture = new FramebufferTexture( textureSize, textureSize );
// calculate start position for copying part of the frame data
const vector = new Vector2();
vector.x = ( window.innerWidth * pixelRatio / 2 ) - ( textureSize / 2 );
vector.y = ( window.innerHeight * pixelRatio / 2 ) - ( textureSize / 2 );
// render the scene
renderer.clear();
renderer.render( scene, camera );
// copy part of the rendered frame into the framebuffer texture
renderer.copyFramebufferToTexture( vector, frameTexture );
[example:webgl_framebuffer_texture]
[page:Number width] -- The width of the texture.
[page:Number height] -- The height of the texture.
See the base [page:Texture Texture] class for common properties.
Whether to generate mipmaps for the [name]. Default value is `false`.
Read-only flag to check if a given object is of type [name].
How the texture is sampled when a texel covers more than one pixel. The
default is [page:Textures THREE.NearestFilter], which uses the value of
the closest texel.
See [page:Textures texture constants] for details.
How the texture is sampled when a texel covers less than one pixel. The
default is [page:Textures THREE.NearestFilter], which uses the value of
the closest texel.
See [page:Textures texture constants] for details.
True by default. This is required so that the canvas data is loaded.
See the base [page:Texture Texture] class for common methods.
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]


---
layout: default
title: About
permalink: /about/
---
We investigate novel methods to integrate geoscientific data and knowledge in process simulations of subsurface flow
and transport problems with a specific focus on inverse problems, data fusion, and the analysis and quantification
of uncertainties. The group consists of Florian Wellmann as the Junior Research Group Leader, a postdoctoral fellow
(Hui Wang) and two AICES fellows (Simin Huang and Rhea von Bülow). In 2015, we had furthermore six Master students
in our group. In several projects, we analyze uncertainties in subsurface structures, their influence on process
simulations, and methods of uncertainty reduction with additional data and models.
Here a list of current posts:
List of publications (tentative):
{% for paper in site.data.papers %}
-
{{paper.author}}: {{paper.title}}
{% endfor %}
{% if site.data.test.inpress.size > 0 %}
Papers in press ({{ site.data.test.inpress.size }}):
{% for paper in site.data.test.inpress %}
{{paper.author}}: {{paper.title}}
{% endfor %}
{% endif %}
Journal articles ({{ site.data.test.journal.size }}):
{% for paper in site.data.test.journal %}
{{paper.author}}: {{paper.title}}
{% endfor %}
Journal articles 2013 ({{ site.data.test.journal.size }}):
{{ site.data.test.journal | where:"year","2013" }}
{% for paper in site.data.test.journal | where:"year","2013" %}
{{paper.author}}: {{paper.title}}
{% endfor %}
Articles in conference proceedings ({{ site.data.test.conf.size }}):
{% for paper in site.data.test.conf %}
{{paper.author}}: {{paper.title}}
{% endfor %}


Born in a humble town in Kenya,Kisii. Raised in a christian background, breed within the doctrines of seventh day adventist church. learnt my primary school in Set GreenHill Academy, further went to the Maranda School. In 2014 joined the Jomo Kennyatta univeristy, to pursue Bsc Mathematics and computer science. During campus, participated in Charity activities such as:
dealt with clothing young primary school pupils with uniform.
dealt with training kids on basics of programming ,with tools as scratch
a member of the Rotaract club jkuat chapter
Within the period he did freelance activities such as creating wordpress websites for institutions, attended bootcamps at ihub , where much interest was developed about coding and cyber security.


BWAMP!
BWAMP
Your browser cannot
bwamp
.
BWAMP 2
Your browser cannot
bwamp 2
.
BWAMP 3
Your browser cannot
bwamp 3
.
PLAY ALL BWAMPS
Who is bwamping?
Thank you
Happy bwamping


What is R8Dr?
"The art of medicine consists in amusing the patient while nature cures the disease." - Voltaire
Confused choosing which doctor to go with?
We know finding the right doctor isn't always easy.
That's where R8Dr comes in handy to help you.
R8Dr is an intutive doctor rating website that helps you in finding the best doctor.
With multiple ratings systems to help you find the best fit doctor through your website.
What's inside?
Why R8Dr?
Fast and Free
Fast speed approach at no cost.
Ease of Use
User-friendly, beautifully designed and polished for easy usage.
Ranking based Hierarchy
Searching and matching based on doctor's rating.
Meet the team
Founder
Co-founder
Co-founder
Co-founder
Co-founder


Simple app to create a custom Bitcoin price prediction.
from to
Bitcoin's current price index is the prediction's price target.


{% extends 'profiles/base.html' %} {% block main %} {% if error is defined %}
{{ error }} {% endif %}
Sorry, something went wrong internally. It's not you, it's me.


SPARQL-Generate queries are executed against a combination of a
The query below parametrizes the generation of RDF using a graph that contains a set of instances of the following pattern. (Click the
?x map:jsonKey ?key ; map:inUcumUnit ?unit ; map:observationClass ?obsClass ; map:propertyClass ?pClass .


cat
OS/161 Reference Manual
Name
cat - concatenate and print files
Synopsis
/bin/cat files...
Description
cat prints the files listed on its command line in order to its
standard output. If the magic filename "-" is encountered, cat
prints its standard input up to the first EOF.
With no arguments, cat prints its standard input.
cat takes no options.
Requirements
cat uses the following syscalls:
cat should function properly once the basic system calls assignment is
completed.


based off color conflict by Hobson-TV on Scratch / follow him for funny animations and interesting gamessometimes bots get stuck on an edge; WASD for red, arrow keys for blue


{% load otree_tags staticfiles %}
You are now paired randomly and anonymously with another participant. Our algorithm will generate a number that determines the proportion of your endowment share. Your co-participant, the sender allocates the proportion of shared lab token and privately observes the random number displayed on their screen.
You are the receiver.
You will receive a share of {{ Constants.endowment }} given by your co-participant (the sender). The Sender will decide how much she or he will retain. Each of lab token share retrieved by the sender will be multiplied by 2. The table below exhibit the relative benefit enjoyed by the Sender and the receiver in each possible allocation chosen by the sender.
{% include 'dishonesty_app/includes/allocation_table.html' %}As the receiver , we would like you to guess the amount of allocated lab token by your co-participant given the different possible random number indicated by our algorithm Every correct guess will be rewarded 10 lab token to your wallet


HAXeditor is a revolutionary new way of editing content. It's a block editor that can be extended by simply extending the web.
Waxam experts can help you...
- Implement HAXEditor in your organization
- Create new elements for the HAXeditor
- Teach you how to make the most of your web development with Web components that work in HAXeditor


It is about the projects i worked on during semester 6 of ICT & Media Design
Find Out MoreI would love to work as a App Developer. That why I study ICT & SMART MOBILE at the Fontys in Eindhoven. Before I went to Fontys I have studied Graphic Design.
See my expertiseIf you want to create a App, you first need a AWESOME concept!
I have experience with Adobe XD, Photoshop, Indesign and Illustrator!
I also have experience with coding in Swift, JavaScript (ReactNative / Angular2), HTML/CSS, C# and PHP!
I learned to test the application with alot of users to get the best result!
Do you want to know more about me or can I help you with a Mobile Application? That Great! Please give me a call of send me a email.
06-42667970


| Id | Description | Update | Delete |
|---|---|---|---|
| 1 | Learn Full stack with Spring Boot and Angular | ||
| 2 | Learn Full stack with Spring Boot and React | ||
| 3 | Master Microservices with Spring Boot and Spring Cloud | ||
| 4 | Deploy Spring Boot Microservices to Cloud with Docker and Kubernetes |


Feathers Cookbook
Simple and targeted tutorials about Feathers designed to demonstrate how to use or extend the components to implement specific common behaviors.
AutoComplete
ButtonGroup
Callout
How to close a
Callout
without disposing it (or without disposing its content)How to stop a
Callout
from closing automatically after touch or keyboard input
Custom Item Renderers
How to support multiple touch states in a custom item renderer
How to select (or deselect) a custom item renderer on tap or click
How to prevent a List from scrolling when a child of a custom item renderer is touched
How to dispatch a triggered event from a custom item renderer
How to dispatch a long press event from a custom item renderer


{% extends "layouts/base.html" %} {% block head %} {% endblock head %} {% block title %}Numbas Author's Documentation{% endblock title %} {% block content %}
The aim of these pages is to serve as a guide and a reference for Numbas question authors.
Use the links at the top of the page to navigate.
{% endblock content %}


--- layout: default nav: extending ---
Intercooler has a few different extension points. You can call a few direct methods on the global
Intercooler
object, and you can also listen for intercooler related events.
| Method | Description |
|---|---|
Intercooler.setLogger(logger)
|
Sets a logger for intercooler to use (defaults to window.console
|
Intercooler.setLogLevel(Intercooler.logLevels.DEBUG)
|
Sets the logging level for Intercooler |
Intercooler.addURLHandler(handler)
|
Lets you add a client side mock URL handler for testing/prototyping:
Intercooler.addURLHandler({ 'url': '/update', 'get' : function() { return 'Here's some content!" }, }); |
Intercooler.refresh(elt)
|
Refreshes the given element manually |
Intercooler fires the following events on elements:
| Event | Description |
|---|---|
ic.beforeHeaders(elt, xhr)
|
Triggered before intercooler headers are processed. |
ic.afterHeaders(elt, xhr)
|
Triggered after intercooler headers are processed. |
ic.beforeSend(elt, data)
|
Triggered before sending an intercooler AJAX request to the server. The second argument to the event is the data hash, and can be added or removed from to change the values sent to the server. |
ic.success(elt, data, textStatus, xhr)
|
Triggered after a successful intercooler request is received |
ic.error(elt, req, status, str)
|
Triggered after an error occurs during an intercooler request |
ic.complete(elt, data)
|
Triggered after an intercooler request completes, regardless of status |
ic.onPoll(elt)
|
Triggered before a poll request is dispatched |
Here is some code that uses the BlockUI library to block the UI when an intercooler request is in flight:
$(function(){ $('.btn').on('ic.beforeSend', function(){ $.blockUI(); }).on('ic.complete', function(){ $.unblockUI(); }); })


Apple's Slinging Phone Cases For $200 Because Of Course
by Sarah BasfordApple has announced it's releasing a range of Smart Battery Cases for the iPhone 11 series. While they give you the ability to charge your battery on the go, in true fruit company style, they're bloody expensive.
The new Apple Smart Battery Cases are on sale for $199 a pop for the iPhone 11, 11 Max and the 11 Max Pro. Apple reckons it can give your device another 50 per cent of charge and it's also compatible with Qi and USB-PD charging.
Interestingly, there's a dedicated button on the case that launches the phone's camera app even if it's locked. Holding the button allows you to take a photo and a longer hold records a QuickTake video.
So, you're certainly getting a lot of features jammed into the case but $200 is still a lot, especially when you're paying a minimum of $1199 for the iPhone 11 and up to $2499 for the Pro Max.
We'll let you know how we find it (and if it's maybe worth it?) when we try it out next week.


Preparation time
less than 30 mins
Cooking time
30 mins to 1 hour
Serves
Serves 4 glamorous guests
A classic ‘just for the family’ dish turned completely on its head. Serve this little number in individual portions to make it worthy of any dinner-party table. I have used dolcelatte as my cheese of choice. It is softer round the edges than Stilton and incredibly moreish. It dresses up this British classic to make it a meal fit for royalty.
Preheat the oven to 200C/400F/Gas 6.
Cook the macaroni in a large pan of boiling salted water, for 8-10 minutes, or until just cooked. (It needs to be just undercooked as the pasta will be cooked again in the oven.) Drain, return to the pan and set aside.
Meanwhile, fry the pancetta in a medium frying pan over a gentle heat until it just starts to brown and crisp up, then add the thyme leaves and spring onions and cook for a further 3-4 minutes. Remove the pan from the heat and add its contents to the pasta.
For the sauce, put the butter, flour, nutmeg and mustard in a small pan set over a medium heat and cook until the butter has melted. Mix the milk and cream together in a jug and add a little to the flour and butter in the pan, stirring well. Keep adding the milk mixture, bit by bit, stirring well each time. (This will prevent the sauce from going lumpy. The temptation is to put all the milk in at once only to find you are left with clumps of flour floating on the surface. Should this happen, take the pan off the heat and whisk it like crazy. This normally does the trick to eliminate all the lumps! Make sure you get the spoon into the ‘corners’ of the pan as stray mounds of flour often lurk there.)
Once all the milk has been added, turn up the heat and boil for a minute or two. The sauce will thicken considerably, then remove the pan from the heat. Add two-thirds of the dolcelatte (or gorgonzola) and parmesan to the sauce while it is still hot and stir together until well combined. It may be a bit lumpy, but that is fine. Season to taste with salt and pepper.
Add the sauce to the pasta mixture and stir everything together. Spoon the mixture into a shallow casserole dish or four individual large ramekins.
Sprinkle the remaining cheese and the breadcrumbs over the top and bake in the oven for about 20-30 minutes, or until the cheese starts to bubble and the topping is golden-brown.
Sprinkle with the chopped parsley.


Yes? Great! - Then look no further, this app has it all.
For the students of colleges around Ireland, accommodation seems to be scarce. Some students are living in hostels, on couches or worse again, commuting for 2,3 or 4+ hours. This is not practical in the slightest & is very off-putting for first year students - first year students are effected the most and this app helps alleviate this problem for these students.
For the Landlords in these cities with colleges, it's a nightmare for them too. Landlords have their preferences for who stays in their properties, some more picky than others. This app has landlords who are just looking for students to stay in their houses - hence minimizing the amount of homeless students.
Why not sign up for free and test out our new app!


One-time pad simulator using JS
If key is same length as message, will encrypt using the key. Otherwise generates a new key. If you encrypt using the cipher and the corresponding key, the algorithm will decrypt the cipher into the message.Msg:
Key:
One-time pad simulator using JS
If key is same length as message, will encrypt using the key. Otherwise generates a new key. If you encrypt using the cipher and the corresponding key, the algorithm will decrypt the cipher into the message.Msg:
Key:


See what's next
Watch anywhere, but mostly from home
Try 30 Days Free
Watch TV shows and movies anytime, anywehre.


This page contains a description of the transformations and settings for each network prior to calculating measures. Auto-detect means that the network was not modified, but only measured to determine whether each property is true or false. Note that symmetry and self-loops only apply to uni-modal networks. These settings affect measure values.
Network Properties
Meta-network Network Negative Values Symmetric Binary Ignore Self-loops New_Testament Semantic Network False (auto-detect) True (auto-detect) False (auto-detect) False (auto-detect) New_Testament Concept X Meta-Node 1 False (auto-detect) n/a True (auto-detect) n/a New_Testament Meta-Node grouping 1 False (auto-detect) True (auto-detect) False (auto-detect) False (auto-detect)
Produced by ORA-NetScenes, a joint product of the CASOS center at Carnegie Mellon University and Netanomics


Ferramentas e bibliotecas
- CARRETE, L. F.; CASTANARES, M.; DAMIANI, E.; BARTH, F.. DSSE: Drone Swarm Search Environment. 2023. The Drone Swarm Search project is an environment, based on PettingZoo, that is to be used in conjunction with multi-agent (or single-agent) reinforcement learning algorithms. It is an environment in which the agents (drones), have to find the targets (shipwrecked people). The agents do not know the position of the target, and do not receive rewards related to their own distance to the target(s). However, the agents receive the probabilities of the target(s) being in a certain cell of the map. The aim of this project is to aid in the study of reinforcement learning algorithms that require dynamic probabilities as inputs.
- ANDRADE, J.; SILVA, W.; SANTOS, G.; BARTH, F.. MLBugDetection. 2022. Machine learning explainability and unexpectated behaviors detection. Most machine learning explainability packages requires both trained models and the training data to create Explainer objects that explain the model's behavior. This package allows ceteris paribus analysis of features using only the trained model and one or more input samples.


{% extends "base.html" %} {% block title %}Login | {{ block.super }}{% endblock %} {% block content %}
You need to log in to see this page.
Lost password?


Servers
Active connections
Query history
Dynamic tables
Stats
pghoffserver
hoffing pg since 2016
Server alias
Query
Runtime (seconds)
Timestamp
UUID


The table below will appear to be a tree view table immediately, even before scripts are loaded. It will become interactive once the scripts have loaded. You should be able to click a section's expand arrow to expand it. Keys should work - up and down to navigate, shift + up and down to multiselect, left and right to collapse and expand sections.
The table below will turn into a treeview on startup. It will appear to be a normal table until then. The add row link above the table will add a new item inside the Documents folder.
Add Row to Documents| Name | Date Modified | Size |
|---|---|---|
| Documents | Jul 10, 2010 1:39pm | -- |
| Resume.pdf | Jul 10, 2010 1:39pm | -- |
| notes.txt | Jul 10, 2010 1:39pm | -- |
| Receipts | Jul 10, 2010 1:39pm | -- |
| starbucks.txt | Jul 10, 2010 1:39pm | -- |
| safeway.txt | Jul 10, 2010 1:39pm | -- |
| movies.txt | Jul 10, 2010 1:39pm | -- |
| Taxes | Jul 10, 2010 1:39pm | -- |
| 2008 Taxes.pdf | Jul 10, 2010 1:39pm | -- |
| 2009 Taxes.pdf | Jul 10, 2010 1:39pm | -- |
| 2010 Taxes.pdf | Jul 10, 2010 1:39pm | -- |
| Pictures | Jul 10, 2010 1:39pm | -- |
| Baby.jpg | Jul 10, 2010 1:39pm | -- |
| Bar.txt | Jul 10, 2010 1:39pm | -- |
| Candy | Jul 10, 2010 1:39pm | -- |
| Snickers.txt | Jul 10, 2010 1:39pm | -- |
| Foo.txt | Jul 10, 2010 1:39pm | -- |


Star Trek: Insurrection * 1/2 (out of * * * * )
Directed by Jonathan Frakes. Cast: Patrick Stewart, Jonathan Frakes, Levar Burton, Brent Spiner, Michael Dorn, Donna Murphy, Gates McFadden, Marina Sirtis, F. Murray Abraham, Anthony Zerbe. 1998 - 103 minutes. Rated PG (for mild violence). Reviewed December 13, 1998.
By Dustin Putman
I have never been a "Star Trek" fan, and, to tell the truth, out of the five films in the series that I have seen (1,2,3,8,9), I have disliked all of them. I do, however, always go into one of these with an open mind, and the ninth film in the series, "Star Trek: Insurrection," is no exception.
Dropping almost completely the hard-core sci-fi element of the previous one in the series, "First Contact," "Insurrection," tells the story of a planet that holds only 600 people, known as the Ba'ku, as well as the Fountain of Youth. At the start of the picture, the villagers go under attack by a second alien species, known as the Son'a, who want to push all of the Ba'ku out so that their own race will not die out. Also attacking the Ba'ku is Data (Brent Spiner), a robot from the Star Trek Enterprise. After returning to Jean-Luc Picard (Patrick Stewart) and the gang on their space ship, no one can understand why Data was somehow taken over by another force. So several of the Star Trek members travel down to the planet of the Ba'ku, where Picard meets up and starts to fall in love with one of the inhabitants, a sultry, kind alien woman (Donna Murphy), who is over six-hundred-years-old, but looks to only be in her thirties.
"Star Trek: Insurrection," is a completely unoriginal and cheap-looking installment in the series, and is a big step down from, 1996's "First Contact," which at least appeared to try to make something a bit different. In, "Insurrection," however, it plays like a low-rent episode of the television show, due to the small-scale, generic storyline, and an emphasis on one-liners rather than excitement. The film was filled with nearly non-stop comedy, and worse yet, most of it fell flatter than a cartoon character that drops off a cliff. Meanwhile, when there were action sequences, they were not at all interesting or inventive, relying on that old reliable ticking timer that counts down very, very slowly. This plot device, which is seen in just about every action film made nowadays, is getting old fast. Are filmmakers so bankrupt of ingenuity and ideas that they must always have a timer ticking away during the climax?
Another element of, "Star Trek," films in general is that Picard seems to always have to have a love interest, but then she always miraculously disappears when the next film is made two or three years later. Although Donna Murphy, who falls victim to this thankless love interest role here, is actually one of the few characters that we get to know in the 103-minute running time, Alfre Woodard was far superior in, "First Contact." She should have returned for this one, but I don't blame her for not wanting to waste her time with this movie's disappointing and often lifeless screenplay, by Michael Piller.
"Star Trek: Insurrection," is perhaps the weakest film in the "Star Trek," series, although I have not seen what is widely considered the worst, "Star Trek V: The Final Frontier." "Insurrection," is the type of "safe" sequel that will bewilder non-fans, since it is so low-tech compared to most of today's blockbuster action films (although most of these are honestly not very good, either), and should disappoint the loyal Trekkies, since it could have easily been better if the makers had realized that the screenplay needed to go through a few more drafts. On second thought, they probably should have completely thrown the script out. That way, they could have come up with a story that at least had a sign of intelligence and freshness.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


SheetJS + Angular 2+ demo The core library can be used as-is in angular applications. The Community Edition README details some common use cases. We also have some more public demos This demo shows `SheetJSComponent` which provides: - File input button with an event handler to parse the workbook - `data` property: array of arrays - Simple angular table which binds to the `data` property - `export` function that exports the `data` property to a new file. Sample Spreadsheet


Object-oriented design was introduced to make the process of coding more relatable to real-life situations by integrating code with data. By revolving code around the idea that everything is an object, it is easier to apply the characteristics and actions to those objects. Using OOD (object-oriented design) can also be highly more organized and efficient by using classes to create multiple objects with similar characteristics and actions.
Example
For example a Dog (an object) has it’s own characteristics it’s breed, it’s age, it’s gender ect.. These are known as the object’s attributes or state - the code’s data. It also has it’s own actions; wags tail, runs, takes naps. Those are it’s methods, the code’s procedures.
Defining Objects
Typically, before even thinking about writing code, you will need to work through the problem at hand and making userstories. From there, determine what is the object, the attributes and the actions. A good rule of thumb is that objects are nouns, if you can put “the” in front of it, then it should be an object, ex: The car, the customer, the bank account. From there, using the userstories you can organize what attributes that object will have by pulling out the adjectives. Lastly, use the verbs of the userstories to determine the actions these objects will need.
Setting up Classes Classes
are what box an object’s attributes and methods together. Not only can it box those up, but it can also be applied to more than one object, streamlining the creation of many objects of the same nature. Subclasses can be made if there are some similarities with another class (which in turn would be the parent class). Subclasses will inherit the methods and attributes from the parent, but can be rewritten. It’s within the organization of these classes that can make or break the goals of well-structured OOD code, especially with data being passed around and in between many different methods.
The concluding difference
The ultimate goal of a finished program is that it when the time comes to change it, which is inevitable, that the code will be easy to understand and workable to change with few complications. Taking the time to organize well structured code that can easily be changed is far more efficient than quickly doing up code that works well for it’s present intention. OOD has the potential to do that - not necessarily because of the object definitions, but its how you compose them with APIE (abstraction, … and encapsulation). Objects are given lifecycles throughout the program that, depending on how they’re organzied, can actually work against you when it come to making future changes. With functional, less data is stored for later use. This can make it easier to rework since there is not as much back-tracking. The criticism with functional is that slowdown can happen with it’s less efficient use of memory.
In a nutshell
OOD tends to be more practical for creating commercial web applications, while functional is more prefered in academia. Other seasoned programmers would argue that a combination of both is the way to go. A rule I’m making for myself, as I continue learning Ruby, is to direct my focus on learning how to create efficient, reworkable, readable code as much as possible with OOD, but being able to recognize when to substitute with a functional approach. Below is a solid resource I found to demonstrate good use of functional design in Ruby.
Future Reference (guide to functional ruby approach)
http://www.sitepoint.com/functional-programming-techniques-with-ruby-part-i/ http://www.sitepoint.com/functional-programming-techniques-with-ruby-part-ii/


Files CCore/inc/sys/SysFile.h CCore/src/sys/SysFile.cpp
This part contains OS backed file access tools. These tools comply with the general file operation set.
#ifndef CCore_inc_sys_SysFile_h #define CCore_inc_sys_SysFile_h #include <CCore/inc/sys/SysWait.h> #include <CCore/inc/TimeScope.h> #include <CCore/inc/GenFile.h> namespace CCore { namespace Sys { /* classes */ struct File; struct AltFile; struct AltAsyncFile; struct AsyncFileWait; /* struct File */ struct File { // private .... // public struct IOResult { ulen len; FileError error; }; struct PosResult { FilePosType pos; FileError error; }; // public FileError open(StrLen file_name,FileOpenFlags oflags) noexcept; void close(FileMultiError &errout,bool preserve_file=false) noexcept; void close() noexcept; IOResult write(const uint8 *buf,ulen len) noexcept; IOResult read(uint8 *buf,ulen len) noexcept; PosResult getLen() noexcept; PosResult getPos() noexcept; FileError setPos(FilePosType pos) noexcept; }; /* struct AltFile */ struct AltFile { // private .... // public struct Result { FilePosType file_len; FileError error; }; // public Result open(StrLen file_name,FileOpenFlags oflags) noexcept; void close(FileMultiError &errout,bool preserve_file=false) noexcept; void close() noexcept; Result write(FilePosType off,const uint8 *buf,ulen len) noexcept; FileError read(FilePosType off,uint8 *buf,ulen len) noexcept; }; /* struct AltAsyncFile */ struct AltAsyncFile { // private .... // public struct AsyncState; using Async = AsyncState * ; struct Result { FilePosType file_len; FileError error; }; struct RWResult { bool pending; FileError error; }; // public static constexpr ulen MaxRWLen = .... ; Result open(StrLen file_name,FileOpenFlags oflags) noexcept; void close(FileMultiError &errout,bool preserve_file=false) noexcept; void close() noexcept; FileError testRead(FilePosType off,ulen len) noexcept; Result setWrite(FilePosType off,ulen len) noexcept; RWResult startRead(Async async,FilePosType off,uint8 *buf,ulen len) noexcept; FileError completeRead(Async async,ulen len) noexcept; RWResult startWrite(Async async,FilePosType off,const uint8 *buf,ulen len) noexcept; FileError completeWrite(Async async,ulen len) noexcept; }; /* struct AsyncFileWait */ struct AsyncFileWait { // private .... // public static constexpr ulen MaxAsyncs = .... ; FileError init(ulen async_count) noexcept; void exit() noexcept; AltAsyncFile::Async getAsync(ulen index) noexcept; bool addWait(ulen index) noexcept; bool delWait(ulen index) noexcept; WaitResult wait(MSec timeout) noexcept; WaitResult wait(TimeScope time_scope) noexcept; void interrupt() noexcept; // async , semaphore }; } // namespace Sys } // namespace CCore #endif
These structures uses types and constants from the GenFile.h, this includes error codes.
The structure File implements the classical file access.
struct File
{
// private
....
// public
struct IOResult
{
ulen len;
FileError error;
};
struct PosResult
{
FilePosType pos;
FileError error;
};
// public
FileError open(StrLen file_name,FileOpenFlags oflags) noexcept;
void close(FileMultiError &errout,bool preserve_file=false) noexcept;
void close() noexcept;
IOResult write(const uint8 *buf,ulen len) noexcept;
IOResult read(uint8 *buf,ulen len) noexcept;
PosResult getLen() noexcept;
PosResult getPos() noexcept;
FileError setPos(FilePosType pos) noexcept;
};
To work with a file you create an instance of this structure. Then you open the required file using the method open(). Then you use its methods to do file operations. Finally, you uninitialize the instance. Copying of the instances is prohibited. The private content of the structure is target-dependent.
open() initializes the instance and prepares it to perform file operations with the given file. The error code is returned. The first argument is the file name. The second is the open flags. The meaning of the flags is described in the general file operation set. If the object is successfully initialized, it must be uninitialized by the method close().
close() closes the file. The first variant uses the provided FileMultiError object to return operation error(s). If the flag preserve_file is true, the file is preserved, even if it was opened with the Open_AutoDelete flag. The second variant does not report any errors and does not preserve the file, opened with the Open_AutoDelete flag.
write() writes the given byte range to the file at the current file position. The file position is updated. The return value has the inner type IOResult. This structure has two fields: len and error. The len is the number of bytes have been written and the error is the error code. The len is less or equal than the argument len. The file may be extended by this operation. If the operation is successful, the resulting length should be equal the input length. Other behavior is not recommended. This operation is available only if the file has been opened with the flag Open_Write.
read() reads the byte range from the file to the provided buffer from the current file position. The file position is updated. The return value has the inner type IOResult. This structure has two fields: len and error. The len is the number of bytes have been red and the error is the error code. The len is less or equal than the argument len. If the operation is successful, the resulting length should be equal minimum of the input length and the number of bytes after the current file position to the end of file. Other behavior is not recommended. This operation is available only if the file has been opened with the flag Open_Read.
getLen() returns the current length of the file. The return value is represented by the inner structure PosResult. This structure has two fields: pos and error. pos is the length of the file, error is the error code. This operation is available only if the file has been opened with the flag Open_Pos.
getPos() returns the current position of the file. The return value is represented by the inner structure PosResult. This structure has two fields: pos and error. The pos is the file position, the error is the error code. This operation is available only if the file has been opened with the flag Open_Pos.
setPos() sets the current position of the file. The error code is returned. If the position is after the end-of-file, the behavior is undefined. If you want to extend the file, it can be done by the method write(). This operation is available only if the file has been opened with the flag Open_Pos.
The structure AltFile implements an alternative file access.
struct AltFile
{
// private
....
// public
struct Result
{
FilePosType file_len;
FileError error;
};
// public
Result open(StrLen file_name,FileOpenFlags oflags) noexcept;
void close(FileMultiError &errout,bool preserve_file=false) noexcept;
void close() noexcept;
Result write(FilePosType off,const uint8 *buf,ulen len) noexcept;
FileError read(FilePosType off,uint8 *buf,ulen len) noexcept;
};
To work with a file you create an instance of this structure. Then you open the required file using the method open(). Then you use its methods to do file operations. Finally, you uninitialize the instance. Copying of the instances is prohibited. The private content of the structure is target-dependent.
open() initializes the instance and prepares it to perform file operations with the given file. The return value has the inner type Result. This structure has two fields: file_len and error. The file_len is the length of the file, the error is the error code. The first argument is the file name. The second is the open flags. This kind of file has no an internal file position. The meaning of the flags is described in the general file operation set. If the object is successfully initialized, it must be uninitialized by the method close().
close() closes the file. The first variant uses the provided FileMultiError object to return operation error(s). If the flag preserve_file is true, the file is preserved, even if it was opened with the Open_AutoDelete flag. The second variant does not report any errors and does not preserve the file, opened with the Open_AutoDelete flag.
write() writes the given byte range to the file. The file position to write is given by the first argument. This operation may extend the file. The return value has the inner type Result. This structure has two fields: file_len and error. The file_len is the new length of the file, the error is the error code. This operation is available only if the file has been opened with the flag Open_Write.
read() reads the byte range from the file to the provided buffer. The file position to read is given by the first argument. The error code is returned. The read range must not cross end-of-file. This operation is available only if the file has been opened with the flag Open_Read.
The structure AltFile implements an alternative file access in an asynchronous manner.
struct AltAsyncFile
{
// private
....
// public
struct AsyncState;
using Async = AsyncState * ;
struct Result
{
FilePosType file_len;
FileError error;
};
struct RWResult
{
bool pending;
FileError error;
};
// public
static constexpr ulen MaxRWLen = .... ; // like 1_MByte
Result open(StrLen file_name,FileOpenFlags oflags) noexcept;
void close(FileMultiError &errout,bool preserve_file=false) noexcept;
void close() noexcept;
FileError testRead(FilePosType off,ulen len) noexcept;
Result setWrite(FilePosType off,ulen len) noexcept;
RWResult startRead(Async async,FilePosType off,uint8 *buf,ulen len) noexcept;
FileError completeRead(Async async,ulen len) noexcept;
RWResult startWrite(Async async,FilePosType off,const uint8 *buf,ulen len) noexcept;
FileError completeWrite(Async async,ulen len) noexcept;
};
To work with a file you create an instance of this structure. Then you open the required file using the method open(). Then you use its methods to do file operations. Finally, you uninitialize the instance. Copying of the instances is prohibited. The private content of the structure is target-dependent.
open() initializes the instance and prepares it to perform file operations with the given file. The return value has the inner type Result. This structure has two fields: file_len and error. The file_len is the length of the file, the error is the error code. The first argument is the file name. The second is the open flags. This kind of file has no an internal file position. The meaning of the flags is described in the general file operation set. If the object is successfully initialized, it must be uninitialized by the method close().
close() closes the file. The first variant uses the provided FileMultiError object to return operation error(s). If the flag preserve_file is true, the file is preserved, even if it was opened with the Open_AutoDelete flag. The second variant does not report any errors and does not preserve the file, opened with the Open_AutoDelete flag. All pending file read/write operations must be finished before the call of this method.
testRead() checks the read position. If the read range does not fit into the file range it returns the error. The error code is returned. This operation is available only if the file has been opened with the flag Open_Read.
setWrite() prepares the file write operation. It checks the write range for overflow and increases the internal file length field, if the file is to be extended. This method must be called before the startWrite(). This operation is available only if the file has been opened with the flag Open_Write.
startRead() starts the read operation. The first argument is an async token. The type of this token is the inner type Async and usually it is the pointer to some structure (AsyncState). The return value has the inner type RWResult. It has two fields: pending and error. The first field is true, if the operation is pending, otherwise it is finished. The second is the error code. If the operation is finished, no other steps are required. If the operation is pending, you must wait until the token is finished and then call the method completeRead(). This operation is available only if the file has been opened with the flag Open_Read.
completeRead() completes the read operation. The first argument is the operation token, the second is the original argument len from the startRead() call. This method must be used only after the correspondent async token is reported finished. The error code is returned. This operation is available only if the file has been opened with the flag Open_Read.
startWrite() starts the write operation. The first argument is an async token. The type of this token is the inner type Async and usually it is the pointer to some structure (AsyncState). The return value has the inner type RWResult. It has two fields: pending and error. The first field is true, if the operation is pending, otherwise it is finished. The second is the error code. If the operation is finished, no other steps are required. If the operation is pending, you must wait until the token is finished and then call the method completeWrite(). This operation is available only if the file has been opened with the flag Open_Write.
completeWrite() completes the write operation. The first argument is the operation token, the second is the original argument len from the startWrite() call. This method must be used only after the correspondent async token is reported finished. The error code is returned. This operation is available only if the file has been opened with the flag Open_Write.
The length of any read or write operation must not exceed MaxRWLen, which should has the value like 1 MByte. The data buffer is in use during the whole read or write operation, so it must be held intact until the operation is complete.
Here is a pattern to do a read operation:
AltAsyncFile::Async async=<acquire an unused async token>; if( auto error=file.testRead(off,len) ) { <release async>; return error; } auto result=file.startRead(async,off,buf,len); if( result.error ) { <release async>; return result.error; } if( result.pending ) { <wait until async is finished>; auto error=file.completeRead(async,len); <release async>; return error; } else { <release async>; return FileError_Ok; }
Here is a pattern to do a write operation:
AltAsyncFile::Async async=<acquire an unused async token>; auto op_result=file.startWrite(off,len); if( op_result.error ) { <release async>; return {op_result.error,0}; } auto result=file.startWrite(async,off,buf,len); if( result.error ) { <release async>; return {result.error,0}; } if( result.pending ) { <wait until async is finished>; auto error=file.completeWrite(async,len); <release async>; return {error,op_result.file_len}; } else { <release async>; return {FileError_Ok,op_result.file_len}; }
To work with async tokens there is the structure AsyncFileWait.
struct AsyncFileWait
{
// private
....
// public
static constexpr ulen MaxAsyncs = .... ; // like 50-100
FileError init(ulen async_count) noexcept;
void exit() noexcept;
AltAsyncFile::Async getAsync(ulen index) noexcept;
bool addWait(ulen index) noexcept;
bool delWait(ulen index) noexcept;
WaitResult wait(MSec timeout) noexcept;
WaitResult wait(TimeScope time_scope) noexcept;
void interrupt() noexcept; // async , semaphore
};
This structure is a pool of tokens. To work with tokens you create an instance of this structure and initialize it. Then you use its methods to do async file operations. Finally, you uninitialize the instance. Copying of the instances is prohibited. The private content of the structure is target-dependent.
init() initializes the instance. The argument is the async pool size. This value must not exceed the inner constant MaxAsyncs. Otherwise the method returns a error. If the object is successfully initialized, it must be uninitialized by the method exit(). The pool contains async_count async tokens. They are indexed by the numbers from the range [0,async_count). Some of them comprise the "wait set". Initially the set is empty.
exit() uninitializes the instance.
getAsync() returns the token with the given index.
addWait() adds the token with the given index to the wait set. The return value is true, if the token was included in the set, and false, if the token is already in the set.
delWait() removes the token with the given index from the wait set. The return value is true, if the token was excluded from the set, and false, if the token is already not in the set.
wait() waits while one of the tokens from the wait set is finished, i.e. some async file operation is started with this token and it is finished. The return value has the type WaitResult. The value is the index of the token been finished, or one of the negative special values. Two variants of wait() accepts timeouts of different kinds: as a MSec or as a TimeScope. The special return values have the following meanings:
interrupt() is a special method. This method can be used to interrupt the wait(). Unlike other methods, this one can be called in parallel to other method calls. This method has a "semaphore behavior", i.e. several calls provide several interrupts.


Before Change
numpy.random.seed(seed)
X_train, y_train, X_test, y_test = CachedDatasets().load_dataset("Trace")
// Keep first 3 classes
X_train = X_train[y_train < 4]
numpy.random.shuffle(X_train)
// Keep only 50 time series
X_train = TimeSeriesScalerMeanVariance().fit_transform(X_train[:50])
sz = X_train.shape[1]
gak_km = GlobalAlignmentKernelKMeans(n_clusters=3,
sigma=sigma_gak(X_train),
n_init=1,
After Change
def test_serialize_global_alignment_kernel_kmeans():
n, sz, d = 15, 10, 3
rng = numpy.random.RandomState(0)
X = rng.randn(n, sz, d)
gak_km = GlobalAlignmentKernelKMeans(n_clusters=3, verbose=False,
max_iter=5)


Click the titlebar to drag.
Double-click titlebar to maximize.
Click the lower-right corner to resize.
Click the tilde to open a new tab.
Click the tilde with a modifier to close the window.