mirror of
https://github.com/alanorth/cgspace-notes.git
synced 2025-01-27 05:49:12 +01:00
Add notes for 2020-01-27
This commit is contained in:
@ -35,7 +35,7 @@ http://localhost:3000/solr/statistics/update?stream.body=%3Ccommit/%3E
|
||||
Then I reduced the JVM heap size from 6144 back to 5120m
|
||||
Also, I switched it to use OpenJDK instead of Oracle Java, as well as re-worked the Ansible infrastructure scripts to support hosts choosing which distribution they want to use
|
||||
"/>
|
||||
<meta name="generator" content="Hugo 0.62.2" />
|
||||
<meta name="generator" content="Hugo 0.63.1" />
|
||||
|
||||
|
||||
|
||||
@ -65,7 +65,7 @@ Also, I switched it to use OpenJDK instead of Oracle Java, as well as re-worked
|
||||
|
||||
<!-- combined, minified CSS -->
|
||||
|
||||
<link href="https://alanorth.github.io/cgspace-notes/css/style.a20c1a4367639632cdb341d23c27ca44fedcc75b0f8b3cbea6203010da153d3c.css" rel="stylesheet" integrity="sha256-ogwaQ2djljLNs0HSPCfKRP7cx1sPizy+piAwENoVPTw=" crossorigin="anonymous">
|
||||
<link href="https://alanorth.github.io/cgspace-notes/css/style.23e2c3298bcc8c1136c19aba330c211ec94c36f7c4454ea15cf4d3548370042a.css" rel="stylesheet" integrity="sha256-I+LDKYvMjBE2wZq6MwwhHslMNvfERU6hXPTTVINwBCo=" crossorigin="anonymous">
|
||||
|
||||
|
||||
<!-- RSS 2.0 feed -->
|
||||
@ -112,7 +112,7 @@ Also, I switched it to use OpenJDK instead of Oracle Java, as well as re-worked
|
||||
<header>
|
||||
<h2 class="blog-post-title" dir="auto"><a href="https://alanorth.github.io/cgspace-notes/2018-05/">May, 2018</a></h2>
|
||||
<p class="blog-post-meta"><time datetime="2018-05-01T16:43:54+03:00">Tue May 01, 2018</time> by Alan Orth in
|
||||
<i class="fa fa-folder" aria-hidden="true"></i> <a href="/cgspace-notes/categories/notes" rel="category tag">Notes</a>
|
||||
<span class="fas fa-folder" aria-hidden="true"></span> <a href="/cgspace-notes/categories/notes" rel="category tag">Notes</a>
|
||||
|
||||
|
||||
</p>
|
||||
@ -135,7 +135,7 @@ Also, I switched it to use OpenJDK instead of Oracle Java, as well as re-worked
|
||||
<li>Looking over some IITA records for Sisay
|
||||
<ul>
|
||||
<li>Other than trimming and collapsing consecutive whitespace, I made some other corrections</li>
|
||||
<li>I need to check the correct formatting of COTE D'IVOIRE vs COTE D’IVOIRE</li>
|
||||
<li>I need to check the correct formatting of COTE D’IVOIRE vs COTE D’IVOIRE</li>
|
||||
<li>I replaced all DOIs with HTTPS</li>
|
||||
<li>I checked a few DOIs and found at least one that was missing, so I Googled the title of the paper and found the correct DOI</li>
|
||||
<li>Also, I found an <a href="https://www.doi.org/factsheets/DOI_PURL.html">FAQ for DOI that says the <code>dx.doi.org</code> syntax is older</a>, so I will replace all the DOIs with <code>doi.org</code> instead</li>
|
||||
@ -180,7 +180,7 @@ Also, I switched it to use OpenJDK instead of Oracle Java, as well as re-worked
|
||||
</ul>
|
||||
<pre><code>$ for line in $(< /tmp/links.txt); do echo $line; http --print h $line; done
|
||||
</code></pre><ul>
|
||||
<li>Most of the links are good, though one is duplicate and one seems to even be incorrect in the publisher's site so…</li>
|
||||
<li>Most of the links are good, though one is duplicate and one seems to even be incorrect in the publisher’s site so…</li>
|
||||
<li>Also, there are some duplicates:
|
||||
<ul>
|
||||
<li><code>10568/92241</code> and <code>10568/92230</code> (same DOI)</li>
|
||||
@ -216,8 +216,8 @@ $ ./resolve-orcids.py -i /tmp/2018-05-06-combined.txt -o /tmp/2018-05-06-combine
|
||||
# sort names, copy to cg-creator-id.xml, add XML formatting, and then format with tidy (preserving accents)
|
||||
$ tidy -xml -utf8 -iq -m -w 0 dspace/config/controlled-vocabularies/cg-creator-id.xml
|
||||
</code></pre><ul>
|
||||
<li>I made a pull request (<a href="https://github.com/ilri/DSpace/pull/373">#373</a>) for this that I'll merge some time next week (I'm expecting Atmire to get back to us about DSpace 5.8 soon)</li>
|
||||
<li>After testing quickly I just decided to merge it, and I noticed that I don't even need to restart Tomcat for the changes to get loaded</li>
|
||||
<li>I made a pull request (<a href="https://github.com/ilri/DSpace/pull/373">#373</a>) for this that I’ll merge some time next week (I’m expecting Atmire to get back to us about DSpace 5.8 soon)</li>
|
||||
<li>After testing quickly I just decided to merge it, and I noticed that I don’t even need to restart Tomcat for the changes to get loaded</li>
|
||||
</ul>
|
||||
<h2 id="2018-05-07">2018-05-07</h2>
|
||||
<ul>
|
||||
@ -225,7 +225,7 @@ $ tidy -xml -utf8 -iq -m -w 0 dspace/config/controlled-vocabularies/cg-creator-i
|
||||
<li>The documentation regarding the Solr stuff is limited, and I cannot figure out what all the fields in <code>conciliator.properties</code> are supposed to be</li>
|
||||
<li>But then I found <a href="https://github.com/okfn/reconcile-csv">reconcile-csv</a>, which allows you to reconcile against values in a CSV file!</li>
|
||||
<li>That, combined with splitting our multi-value fields on “||” in OpenRefine is amaaaaazing, because after reconciliation you can just join them again</li>
|
||||
<li>Oh wow, you can also facet on the individual values once you've split them! That's going to be amazing for proofing CRPs, subjects, etc.</li>
|
||||
<li>Oh wow, you can also facet on the individual values once you’ve split them! That’s going to be amazing for proofing CRPs, subjects, etc.</li>
|
||||
</ul>
|
||||
<h2 id="2018-05-09">2018-05-09</h2>
|
||||
<ul>
|
||||
@ -276,7 +276,7 @@ Livestock and Fish
|
||||
<ul>
|
||||
<li>It turns out there was a space in my “country” header that was causing reconcile-csv to crash</li>
|
||||
<li>After removing that it works fine!</li>
|
||||
<li>Looking at Sisay's 2,640 CIFOR records on DSpace Test (<a href="https://dspacetest.cgiar.org/handle/10568/92904">10568/92904</a>)
|
||||
<li>Looking at Sisay’s 2,640 CIFOR records on DSpace Test (<a href="https://dspacetest.cgiar.org/handle/10568/92904">10568/92904</a>)
|
||||
<ul>
|
||||
<li>Trimmed all leading / trailing white space and condensed multiple spaces into one</li>
|
||||
<li>Corrected DOIs to use HTTPS and “doi.org” instead of “dx.doi.org”
|
||||
@ -318,9 +318,9 @@ return "blank"
|
||||
<li>You could use this in a facet or in a new column</li>
|
||||
<li>More information and good examples here: <a href="https://programminghistorian.org/lessons/fetch-and-parse-data-with-openrefine">https://programminghistorian.org/lessons/fetch-and-parse-data-with-openrefine</a></li>
|
||||
<li>Finish looking at the 2,640 CIFOR records on DSpace Test (<a href="https://dspacetest.cgiar.org/handle/10568/92904">10568/92904</a>), cleaning up authors and adding collection mappings</li>
|
||||
<li>They can now be moved to CGSpace as far as I'm concerned, but I don't know if Sisay will do it or me</li>
|
||||
<li>I was checking the CIFOR data for duplicates using Atmire's Metadata Quality Module (and found some duplicates actually), but then DSpace died…</li>
|
||||
<li>I didn't see anything in the Tomcat, DSpace, or Solr logs, but I saw this in <code>dmest -T</code>:</li>
|
||||
<li>They can now be moved to CGSpace as far as I’m concerned, but I don’t know if Sisay will do it or me</li>
|
||||
<li>I was checking the CIFOR data for duplicates using Atmire’s Metadata Quality Module (and found some duplicates actually), but then DSpace died…</li>
|
||||
<li>I didn’t see anything in the Tomcat, DSpace, or Solr logs, but I saw this in <code>dmest -T</code>:</li>
|
||||
</ul>
|
||||
<pre><code>[Tue May 15 12:10:01 2018] Out of memory: Kill process 3763 (java) score 706 or sacrifice child
|
||||
[Tue May 15 12:10:01 2018] Killed process 3763 (java) total-vm:14667688kB, anon-rss:5705268kB, file-rss:0kB, shmem-rss:0kB
|
||||
@ -335,7 +335,7 @@ return "blank"
|
||||
</ul>
|
||||
<pre><code>2018-05-15 12:35:30,858 INFO org.dspace.submit.step.CompleteStep @ m.garruccio@cgiar.org:session_id=8AC4499945F38B45EF7A1226E3042DAE:submission_complete:Completed submission with id=96060
|
||||
</code></pre><ul>
|
||||
<li>So I'm not sure…</li>
|
||||
<li>So I’m not sure…</li>
|
||||
<li>I finally figured out how to get OpenRefine to reconcile values from Solr via <a href="https://github.com/codeforkjeff/conciliator">conciliator</a>:</li>
|
||||
<li>The trick was to use a more appropriate Solr fieldType <code>text_en</code> instead of <code>text_general</code> so that more terms match, for example uppercase and lower case:</li>
|
||||
</ul>
|
||||
@ -344,11 +344,11 @@ $ ./bin/solr create_core -c countries
|
||||
$ curl -X POST -H 'Content-type:application/json' --data-binary '{"add-field": {"name":"country", "type":"text_en", "multiValued":false, "stored":true}}' http://localhost:8983/solr/countries/schema
|
||||
$ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
</code></pre><ul>
|
||||
<li>It still doesn't catch simple mistakes like “ALBANI” or “AL BANIA” for “ALBANIA”, and it doesn't return scores, so I have to select matches manually:</li>
|
||||
<li>It still doesn’t catch simple mistakes like “ALBANI” or “AL BANIA” for “ALBANIA”, and it doesn’t return scores, so I have to select matches manually:</li>
|
||||
</ul>
|
||||
<p><img src="/cgspace-notes/2018/05/openrefine-solr-conciliator.png" alt="OpenRefine reconciling countries from local Solr"></p>
|
||||
<ul>
|
||||
<li>I should probably make a general copy field and set it to be the default search field, like DSpace's search core does (see schema.xml):</li>
|
||||
<li>I should probably make a general copy field and set it to be the default search field, like DSpace’s search core does (see schema.xml):</li>
|
||||
</ul>
|
||||
<pre><code><defaultSearchField>search_text</defaultSearchField>
|
||||
...
|
||||
@ -356,7 +356,7 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
</code></pre><ul>
|
||||
<li>Actually, I wonder how much of their schema I could just copy…</li>
|
||||
<li>Apparently the default search field is the <code>df</code> parameter and you could technically just add it to the query string, so no need to bother with that in the schema now</li>
|
||||
<li>I copied over the DSpace <code>search_text</code> field type from the DSpace Solr config (had to remove some properties so Solr would start) but it doesn't seem to be any better at matching than the <code>text_en</code> type</li>
|
||||
<li>I copied over the DSpace <code>search_text</code> field type from the DSpace Solr config (had to remove some properties so Solr would start) but it doesn’t seem to be any better at matching than the <code>text_en</code> type</li>
|
||||
<li>I think I need to focus on trying to return scores with conciliator</li>
|
||||
</ul>
|
||||
<h2 id="2018-05-16">2018-05-16</h2>
|
||||
@ -364,9 +364,9 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
<li>Discuss GDPR with James Stapleton
|
||||
<ul>
|
||||
<li>As far as I see it, we are “Data Controllers” on CGSpace because we store peoples’ names, emails, and phone numbers if they register</li>
|
||||
<li>We set cookies on the user's computer, but these do not contain personally identifiable information (PII) and they are “session” cookies which are deleted when the user closes their browser</li>
|
||||
<li>We set cookies on the user’s computer, but these do not contain personally identifiable information (PII) and they are “session” cookies which are deleted when the user closes their browser</li>
|
||||
<li>We use Google Analytics to track website usage, which makes Google the “Data Processor” and in this case we merely need to <em>limit</em> or <em>obfuscate</em> the information we send to them</li>
|
||||
<li>As the only personally identifiable information we send is the user's IP address, I think we only need to enable <a href="https://support.google.com/analytics/answer/2763052">IP Address Anonymization</a> in our <code>analytics.js</code> code snippets</li>
|
||||
<li>As the only personally identifiable information we send is the user’s IP address, I think we only need to enable <a href="https://support.google.com/analytics/answer/2763052">IP Address Anonymization</a> in our <code>analytics.js</code> code snippets</li>
|
||||
<li>Then we can add a “Privacy” page to CGSpace that makes all of this clear</li>
|
||||
</ul>
|
||||
</li>
|
||||
@ -380,22 +380,22 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
</code></pre><ul>
|
||||
<li>I tested loading a certain page before and after adding this and afterwards I saw that the parameter <code>aip=1</code> was being sent with the analytics response to Google</li>
|
||||
<li>According to the <a href="https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#anonymizeIp">analytics.js protocol parameter documentation</a> this means that IPs are being anonymized</li>
|
||||
<li>After finding and fixing some duplicates in IITA's <code>IITA_April_27</code> test collection on DSpace Test (10568/92703) I told Sisay that he can move them to IITA's Journal Articles collection on CGSpace</li>
|
||||
<li>After finding and fixing some duplicates in IITA’s <code>IITA_April_27</code> test collection on DSpace Test (10568/92703) I told Sisay that he can move them to IITA’s Journal Articles collection on CGSpace</li>
|
||||
</ul>
|
||||
<h2 id="2018-05-17">2018-05-17</h2>
|
||||
<ul>
|
||||
<li>Testing reconciliation of countries against Solr via conciliator, I notice that <code>CÔTE D'IVOIRE</code> doesn't match <code>COTE D'IVOIRE</code>, whereas with reconcile-csv it does</li>
|
||||
<li>Also, when reconciling regions against Solr via conciliator <code>EASTERN AFRICA</code> doesn't match <code>EAST AFRICA</code>, whereas with reconcile-csv it does</li>
|
||||
<li>Testing reconciliation of countries against Solr via conciliator, I notice that <code>CÔTE D'IVOIRE</code> doesn’t match <code>COTE D'IVOIRE</code>, whereas with reconcile-csv it does</li>
|
||||
<li>Also, when reconciling regions against Solr via conciliator <code>EASTERN AFRICA</code> doesn’t match <code>EAST AFRICA</code>, whereas with reconcile-csv it does</li>
|
||||
<li>And <code>SOUTH AMERICA</code> matches both <code>SOUTH ASIA</code> and <code>SOUTH AMERICA</code> with the same match score of 2… WTF.</li>
|
||||
<li>It could be that I just need to tune the query filter in Solr (currently using the example <code>text_en</code> field type)</li>
|
||||
<li>Oh sweet, it turns out that the issue with searching for characters with accents is called “code folding” in Solr</li>
|
||||
<li>You can use either a <a href="https://lucene.apache.org/solr/guide/7_3/language-analysis.html"><code>solr.ASCIIFoldingFilterFactory</code> filter</a> or a <a href="https://lucene.apache.org/solr/guide/7_3/charfilterfactories.html"><code>solr.MappingCharFilterFactory</code> charFilter</a> mapping against <code>mapping-FoldToASCII.txt</code></li>
|
||||
<li>Also see: <a href="https://opensourceconnections.com/blog/2017/02/20/solr-utf8/">https://opensourceconnections.com/blog/2017/02/20/solr-utf8/</a></li>
|
||||
<li>Now <code>CÔTE D'IVOIRE</code> matches <code>COTE D'IVOIRE</code>!</li>
|
||||
<li>I'm not sure which method is better, perhaps the <code>solr.ASCIIFoldingFilterFactory</code> filter because it doesn't require copying the <code>mapping-FoldToASCII.txt</code> file</li>
|
||||
<li>And actually I'm not entirely sure about the order of filtering before tokenizing, etc…</li>
|
||||
<li>I’m not sure which method is better, perhaps the <code>solr.ASCIIFoldingFilterFactory</code> filter because it doesn’t require copying the <code>mapping-FoldToASCII.txt</code> file</li>
|
||||
<li>And actually I’m not entirely sure about the order of filtering before tokenizing, etc…</li>
|
||||
<li>Ah, I see that <code>charFilter</code> must be before the tokenizer because it works on a stream, whereas <code>filter</code> operates on tokenized input so it must come after the tokenizer</li>
|
||||
<li>Regarding the use of the <code>charFilter</code> vs the <code>filter</code> class before and after the tokenizer, respectively, I think it's better to use the <code>charFilter</code> to normalize the input stream before tokenizing it as I have no idea what kinda stuff might get removed by the tokenizer</li>
|
||||
<li>Regarding the use of the <code>charFilter</code> vs the <code>filter</code> class before and after the tokenizer, respectively, I think it’s better to use the <code>charFilter</code> to normalize the input stream before tokenizing it as I have no idea what kinda stuff might get removed by the tokenizer</li>
|
||||
<li>Skype with Geoffrey from IITA in Nairobi who wants to deposit records to CGSpace via the REST API but I told him that this skips the submission workflows and because we cannot guarantee the data quality we would not allow anyone to use it this way</li>
|
||||
<li>I finished making the XMLUI changes for anonymization of IP addresses in Google Analytics and merged the changes to the <code>5_x-prod</code> branch (<a href="https://github.com/ilri/DSpace/pull/375">#375</a></li>
|
||||
<li>Also, I think we might be able to implement <a href="https://developers.google.com/analytics/devguides/collection/analyticsjs/user-opt-out">opt-out functionality for Google Analytics using a window property</a> that could be managed by <a href="https://webgilde.com/en/analytics-opt-out/">storing its status in a cookie</a></li>
|
||||
@ -430,7 +430,7 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
</ul>
|
||||
<h2 id="2018-05-23">2018-05-23</h2>
|
||||
<ul>
|
||||
<li>I'm investigating how many non-CGIAR users we have registered on CGSpace:</li>
|
||||
<li>I’m investigating how many non-CGIAR users we have registered on CGSpace:</li>
|
||||
</ul>
|
||||
<pre><code>dspace=# select email, netid from eperson where email not like '%cgiar.org%' and email like '%@%';
|
||||
</code></pre><ul>
|
||||
@ -443,13 +443,13 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
<h2 id="2018-05-28">2018-05-28</h2>
|
||||
<ul>
|
||||
<li>Daniel Haile-Michael sent a message that CGSpace was down (I am currently in Oregon so the time difference is ~10 hours)</li>
|
||||
<li>I looked in the logs but didn't see anything that would be the cause of the crash</li>
|
||||
<li>I looked in the logs but didn’t see anything that would be the cause of the crash</li>
|
||||
<li>Atmire finalized the DSpace 5.8 testing and sent a pull request: <a href="https://github.com/ilri/DSpace/pull/378">https://github.com/ilri/DSpace/pull/378</a></li>
|
||||
<li>They have asked if I can test this and get back to them by June 11th</li>
|
||||
</ul>
|
||||
<h2 id="2018-05-30">2018-05-30</h2>
|
||||
<ul>
|
||||
<li>Talk to Samantha from Bioversity about something related to Google Analytics, I'm still not sure what they want</li>
|
||||
<li>Talk to Samantha from Bioversity about something related to Google Analytics, I’m still not sure what they want</li>
|
||||
<li>DSpace Test crashed last night, seems to be related to system memory (not JVM heap)</li>
|
||||
<li>I see this in <code>dmesg</code>:</li>
|
||||
</ul>
|
||||
@ -458,7 +458,7 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
[Wed May 30 00:00:40 2018] oom_reaper: reaped process 6082 (java), now anon-rss:0kB, file-rss:0kB, shmem-rss:0kB
|
||||
</code></pre><ul>
|
||||
<li>I need to check the Tomcat JVM heap size/usage, command line JVM heap size (for cron jobs), and PostgreSQL memory usage</li>
|
||||
<li>It might be possible to adjust some things, but eventually we'll need a larger VPS instance</li>
|
||||
<li>It might be possible to adjust some things, but eventually we’ll need a larger VPS instance</li>
|
||||
<li>For some reason there are no JVM stats in Munin, ugh</li>
|
||||
<li>Run all system updates on DSpace Test and reboot it</li>
|
||||
<li>I generated a list of CIFOR duplicates from the <code>CIFOR_May_9</code> collection using the Atmire MQM module and then dumped the HTML source so I could process it for sending to Vika</li>
|
||||
@ -467,13 +467,13 @@ $ ./bin/post -c countries ~/src/git/DSpace/2018-05-10-countries.csv
|
||||
<pre><code>$ grep -E 'aspect.duplicatechecker.DuplicateResults.field.del_handle_[0-9]{1,3}_Item' ~/Desktop/https\ _dspacetest.cgiar.org_atmire_metadata-quality_duplicate-checker.html > ~/cifor-duplicates.txt
|
||||
$ sed 's/.*Item1.*/\n&/g' ~/cifor-duplicates.txt > ~/cifor-duplicates-cleaned.txt
|
||||
</code></pre><ul>
|
||||
<li>I told Vika to look through the list manually and indicate which ones are indeed duplicates that we should delete, and which ones to map to CIFOR's collection</li>
|
||||
<li>I told Vika to look through the list manually and indicate which ones are indeed duplicates that we should delete, and which ones to map to CIFOR’s collection</li>
|
||||
<li>A few weeks ago Peter wanted a list of authors from the ILRI collections, so I need to find a way to get the handles of all those collections</li>
|
||||
<li>I can use the <code>/communities/{id}/collections</code> endpoint of the REST API but it only takes IDs (not handles) and doesn't seem to descend into sub communities</li>
|
||||
<li>I can use the <code>/communities/{id}/collections</code> endpoint of the REST API but it only takes IDs (not handles) and doesn’t seem to descend into sub communities</li>
|
||||
<li>Shit, so I need the IDs for the the top-level ILRI community and all its sub communities (and their sub communities)</li>
|
||||
<li>There has got to be a better way to do this than going to each community and getting their handles and IDs manually</li>
|
||||
<li>Oh shit, I literally already wrote a script to get all collections in a community hierarchy from the REST API: <a href="https://gist.github.com/alanorth/ddd7f555f0e487fe0e9d3eb4ff26ce50">rest-find-collections.py</a></li>
|
||||
<li>The output isn't great, but all the handles and IDs are printed in debug mode:</li>
|
||||
<li>The output isn’t great, but all the handles and IDs are printed in debug mode:</li>
|
||||
</ul>
|
||||
<pre><code>$ ./rest-find-collections.py -u https://cgspace.cgiar.org/rest -d 10568/1 2> /tmp/ilri-collections.txt
|
||||
</code></pre><ul>
|
||||
@ -482,8 +482,8 @@ $ sed 's/.*Item1.*/\n&/g' ~/cifor-duplicates.txt > ~/cifor-duplicates-cle
|
||||
<pre><code>dspace=# \copy (select distinct text_value, count(*) from metadatavalue where metadata_field_id = (select metadata_field_id from metadatafieldregistry where element = 'contributor' and qualifier = 'author') AND resource_type_id = 2 AND resource_id IN (select item_id from collection2item where collection_id IN (select resource_id from handle where handle in ('10568/67236','10568/67274',...))) group by text_value order by count desc) to /tmp/ilri-authors.csv with csv;
|
||||
</code></pre><h2 id="2018-05-31">2018-05-31</h2>
|
||||
<ul>
|
||||
<li>Clarify CGSpace's usage of Google Analytics and personally identifiable information during user registration for Bioversity team who had been asking about GDPR compliance</li>
|
||||
<li>Testing running PostgreSQL in a Docker container on localhost because when I'm on Arch Linux there isn't an easily installable package for particular PostgreSQL versions</li>
|
||||
<li>Clarify CGSpace’s usage of Google Analytics and personally identifiable information during user registration for Bioversity team who had been asking about GDPR compliance</li>
|
||||
<li>Testing running PostgreSQL in a Docker container on localhost because when I’m on Arch Linux there isn’t an easily installable package for particular PostgreSQL versions</li>
|
||||
<li>Now I can just use Docker:</li>
|
||||
</ul>
|
||||
<pre><code>$ docker pull postgres:9.5-alpine
|
||||
|
Reference in New Issue
Block a user