momijizukamori: Grey tabby cat with paws on keyboard and mouse. The text reads 'code cat is on the job', lolcats-style (CODE CAT)
[personal profile] momijizukamori
11 items on this second half of the code tour, all by [staff profile] karzilla, Wielder of the Code Machete.

Read more... )
azurelunatic: White capslock text on black background: AS OF 0700 GMT, OPERATIONS HAS DECLARED CASE *CAPSLOCK*. (case capslock)
[personal profile] azurelunatic
[personal profile] momijizukamori and I split this chunk of code tour, so here we go with the first half. This tour is for code being pushed tonight (assuming that between The Crud for one of the folks, and a power outage for another, everything's going to be good to go) so that everyone needs to hang on tighter (in order to keep from being thrown to the wolves).

17 items in this half of the code tour, brought to you by: long-time volunteer [github.com profile] LivredOr returning, relatively new and delightful [github.com profile] srukle, very busy DevCom [github.com profile] kareila (aka [staff profile] karzilla), our own [github.com profile] zorkian ([staff profile] mark), and the amazing [github.com profile] rshatch DID I MENTION THE FACELIFT OF THE IMAGE HOSTING OMG WE HAVE IMAGE HOSTING.

On to the tour!

Read more... )
sophie: A cartoon-like representation of a girl standing on a hill, with brown hair, blue eyes, a flowery top, and blue skirt. ☀ (Default)
[personal profile] sophie
Hello! Your friendly neighbourhood Dreamhack admin here.

I've updated the version of Locale::Country that the Dreamhack machine uses - we were on 3.25, and we're now on 3.42.

I also installed the Log::Log4perl module, as it's now being used by the codebase. This should make update-db.pl work again!

If there are any issues (related to these or otherwise), please comment and let me know!
karzilla: a green fist above the word SMASH! (Default)
[staff profile] karzilla
We're about to deploy a new backend interface for file storage, called BlobStore, which [staff profile] mark wrote over the past few months with the intention of standardizing how file storage is handled in our code and making it work with any number of possible underlying technologies. It currently supports MogileFS and local disk, and we plan to add support for S3 in the future.

At this point, MogileFS is considered legacy technology. If your site is set up to use MogileFS, that configuration will continue to work under BlobStore for now. However, no new code that requires MogileFS will be accepted.

What you need to know if you are writing code: the new methods are implemented in cgi-bin/DW/BlobStore.pm and are pretty straightforward. For the most part they serve as drop-in replacements for the MogileFS file methods.

What you need to know if you are running a server: if you try to do anything related to uploading images, including userpics, you will get a fatal error unless you have defined either %LJ::BLOBSTORE or %LJ::MOGILEFS_CONFIG. So if you were already using MogileFS, you're fine, but if not, you will need to set up local disk storage in one of your local config files. The stock etc/config-private.pl in dw-free will have an example %LJ::BLOBSTORE that you can uncomment and use.

What you need to know if your existing userpics disappear: If you were running a server without MogileFS, all of your system's userpics were stored in a database table, and use of that table is no longer supported. I'm working on a new version of the migrate-userpics.pl script that can be used to move the images into your BlobStore once you've got that configured. (Update: this is available in bin/upgrading/migrate-userpics.pl.)

Obviously this will all need to be documented on the wiki somewhere, but I've got my hands full right now making sure everything is nailed down to push these changes into production in a few days. Let me know if there's anything I didn't cover here that needs to be addressed.
pauamma: Cartooney crab holding drink (Default)
[personal profile] pauamma
It's time for another question thread!

The rules:

- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
kaberett: A sleeping koalasheep (Avatar: the Last Airbender), with the dreamwidth logo above. (dreamkoalasheep)
[personal profile] kaberett
CODE TOUR. This time I didn't get sucked into six months of endless labwork never to be seen again. Have fun.

Read more... )

16 total issues resolved
Contributors: [github.com profile] alierak, [github.com profile] kareila, [github.com profile] rshatch, [github.com profile] zorkian
kaberett: Overlaid Mars & Venus symbols, with Swiss Army knife tools at other positions around the central circle. (Default)
[personal profile] kaberett
Hi all!

I've just had a quick chat with [staff profile] mark following yet another support request about a GUI for the photo hosting system which does actually exist but is pretty bare-bones and currently undocumented.

Mark is comfortable that with a few UI tweaks it could be added to the main menu (Organize --> Manage files, or similar) in order to be discoverable.

The big thing is "have the HTML for embedding an image provided anywhere other than immediately after uploading it". At this stage adding more features/functionality is not on the cards (unless you're volunteering!), but in the spirit of doing a relatively quick UI polish, is there anything else you'd like to see?

I'll be filing an issue in a week's time, and hopefully we can get UI tweaks out in the next code push...
pauamma: Cartooney crab holding drink (Default)
[personal profile] pauamma
It's time for another question thread!

The rules:

- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
mark: A photo of Mark kneeling on top of the Taal Volcano in the Philippines. It was a long hike. (Default)
[staff profile] mark
Historically we've had a policy of trying to actively support people who might be running the DW code somewhere and that has influenced how we've built things, such as making many things options in the codebase and also maintaining support for legacy configurations and systems that we might not use in Dreamwidth.org's production environment.

Since there's not (and never much has been) people seriously running DW code for any major service, I would rather for us to focus our limited development resources on our own development needs. To be totally clear, we will continue to maintain Dreamwidth the open source platform and people are very welcome to use it. You just might have to either do some of your own development or use a production environment that closely mirrors ours.

Some examples of what this update means:

* Perlbal is no longer used at DW HQ and we're removing all support for it
* MogileFS is on its way out (to be replaced by either simple on-disk storage or Amazon S3)
* Master-Master support is deprecated and will be removed
* Configuration options are being cleaned up and some things will become non-optional (i.e. compression, etc)
* No more support for 32 bit systems (think this is gone already tho)

My goal here is to make Dreamwidth development faster and easier for actually developing on Dreamwidth.org. We'll still have to make it possible (and easier!) for people to run DW (if nothing else for our own developers!) but the number of at-scale-production-configurations supported is going down.

As always, comments welcome!
ari_linn: (warrior - normal)
[personal profile] ari_linn
Hello,

Sorry if my question is offtopic in this community, but it doesn't seem like your dev question thread is very active, so I'll take my chances and ask here. I'm trying to programmatically download DW posts from my journal and have troubles accessing friends-only and private posts. Suppose I have the following request:

GET https://ari-linn.dreamwidth.org/545896.html?format=light&expand_all=1 HTTP/1.1
Host: ari-linn.dreamwidth.org


It results in an error page: "You need to be logged in to see this content." Read further about my trials and tribulations )

Is there any way I can programmatically login to DW to access private posts?
momijizukamori: Grey tabby cat with paws on keyboard and mouse. The text reads 'code cat is on the job', lolcats-style (CODE CAT)
[personal profile] momijizukamori
1) I updated my develop branch so that I could rebase my work on converting /customize and /customize/options to TT, and having done so, discovered that the CSS files for both Tropospherical site schemes aren't being served properly. The files are there on the server, but for some reason when they're concatenated with other CSS files the server is falling over. I'm not sure how to fix it.

2) That said, I think I have the bulk of the conversion work done. It's a lot of code, and I had to make some changes to the HTML form template plugin, though, so I'd really appreciate it if some people could go bang on it some before we get it set up for a beta on production. My hackspace is http://www.momiji.hack.dreamwidth.net/
denise: Image: Me, facing away from camera, on top of the Castel Sant'Angelo in Rome (Default)
[staff profile] denise
All of these fixes, changes, etc, are live on the site!

Code tour )


41 total issues resolved
Contributors: [github.com profile] alierak, [github.com profile] chrisboyle, [github.com profile] hotlevel4, [github.com profile] kareila, [github.com profile] momijizukamori, [personal profile] onlyembers, [github.com profile] pinterface, [github.com profile] rahaeli, [personal profile] rosecarmine, [github.com profile] rshatch, [github.com profile] srukle, [github.com profile] woggy, [github.com profile] wohali, [github.com profile] zorkian
pauamma: Cartooney crab holding drink (Default)
[personal profile] pauamma
It's time for another question thread!

The rules:

- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
pauamma: Cartooney crab holding drink (Default)
[personal profile] pauamma
It's time for another question thread!

The rules:

- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
denise: Image: Me, facing away from camera, on top of the Castel Sant'Angelo in Rome (Default)
[staff profile] denise
[github.com profile] wohali has been working on issue 664 to add a RTE to the new beta update page, and is ready for more eyeballs to poke at it and try to hit weird/unusual use cases or things that could be improved!

If you have a few, please poke at the new RTE on [github.com profile] wohali's dreamhack. To test it:

* Go to http://www.wohali.hack.dreamwidth.net/ and create an account.
* Go to http://www.wohali.hack.dreamwidth.net/beta to turn on the beta update page and http://www.wohali.hack.dreamwidth.net/update to make a post with it.

The update page should default to RTE on the beta update page. To disable it, go to Settings and check "Completely disable the Rich Text Editor (use plain textarea only)". (Historically speaking, a lot of RTE glitches happened when switching from HTML mode to RTE mode, so it's probably worth testing that a bunch.) Accessibility help is available by pressing Alt+0 (zero) while the editor is focused.

If you run into a problem or want to give feedback, you can comment on this entry. If reporting a problem, please include a link to the entry you made so [github.com profile] wohali can see the markup!
kareila: Rosie the Riveter "We Can Do It!" with a DW swirl (dw)
[personal profile] kareila
Every few months, I run through [site community profile] changelog compiling a list of who has been contributing patches to our code repository, with the understanding that this is not a competition, or any sort of "high score" list. It's intended as a guide for casual developers, to discern not only our most prolific contributors, but also those who have contributed to the project most recently and therefore would be more likely to provide a timely, informed response to development questions. That is why the list is sorted by "Latest" instead of "Changes".

In general, one commit on Github equals one point in the "Changes" column, but fractional points are awarded for collaborative efforts — the most common example being a new S2 theme, where usually half credit is awarded to the theme author and the other half to the person who converts the theme into a code patch. Due to the nature of development, some changes are massive contributions of new code, and others are tiny tweaks; there is no correlation with the amount of effort involved. We are grateful to everyone who helps to improve Dreamwidth, in ways large or small.

I last compiled this list at the beginning of April. Since that time, we have welcomed five new contributors: [github.com profile] dfabulich, [personal profile] phidari, [personal profile] wohali, [personal profile] pinterface, and [personal profile] onlyembers. Congratulations and thank you again!

  #  User                      Changes     Latest
  1. kareila                      1030     Fri Sep 30 19:09:51 2016 UTC
  2. woggy                          17     Thu Sep 29 22:26:43 2016 UTC
  3. momijizukamori             224.16     Thu Sep 29 19:58:05 2016 UTC
  4. onlyembers                    0.5     Thu Sep 29 19:58:05 2016 UTC
  5. pinterface                   15.5     Sat Sep 24 00:19:48 2016 UTC
  6. wohali                          1     Wed Aug 31 14:12:26 2016 UTC
  7. hotlevel4                      52     Fri Jul 15 22:39:55 2016 UTC
  8. kaberett                       44     Thu Jul 14 14:59:58 2016 UTC
  9. mark                        552.5     Mon Jun 27 04:24:47 2016 UTC
 10. phidari                         2     Sat Jun 18 21:14:12 2016 UTC

 11. cesy                        29.83     Sat Jun 18 15:28:34 2016 UTC
 12. chrisboyle                     15     Sun May 15 12:08:22 2016 UTC
 13. me_and                         36     Sun May 15 11:33:08 2016 UTC
 14. dfabulich                       1     Mon Apr 25 19:53:40 2016 UTC
 15. alierak                      19.5     Sun Apr 10 22:41:50 2016 UTC
 16. azurelunatic                    8     Mon Mar 28 05:54:30 2016 UTC
 17. srukle                          7     Wed Mar 23 16:44:54 2016 UTC
 18. sgsabbage                      17     Wed Feb 24 20:45:39 2016 UTC
 19. sophie                         58     Sun Feb 14 18:19:32 2016 UTC
 20. ljacob                          1     Sat Nov 07 12:13:45 2015 UTC
The rest of the list... (159 total) )
kareila: "Mom, I'm hungry." "Hush, I'm coding. You ate yesterday." (coding)
[personal profile] kareila
I've just merged [personal profile] woggy's code for the new Selective Screening feature! I'm planning on making it live on the site in the next couple of days, but in the meantime, I encourage you to test it in your development environment and let me know if you have any feedback. Here is how it works:

There are three console commands that govern who is subject to selective screening in your journal or community. They are screen_set, screen_unset, and screen_list and they are very similar to the related console commands for banning users. The maximum number of users you are allowed to apply selective screening to is 500 per journal/community.

When a user is subject to selective screening, all of that user's comments in the affected journal/community will be automatically screened, regardless of what the entry's screening settings are. The affected user is informed that their comments are being screened when viewing the reply form. The user's screened comments are like any other screened comments and can be manually unscreened, receive screened replies, etc.

This feature was requested back in 2012 and I am excited that it has been implemented!
pauamma: Cartooney crab holding drink (Default)
[personal profile] pauamma
It's time for another question thread!

The rules:

- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
momijizukamori: Green icon with white text - 'I do believe in phosphorylation! I do!' with a string of DNA basepairs on the bottom (Default)
[personal profile] momijizukamori
I'm in the process of updating /customize/ to move it away from BML and a million widgets, and I've got most of the HTML-y stuff done, but I'm having trouble with the Javascript. The biggest part of this is redoing the AJAX queries, which were previously done in widget-specific ways and passed through a bunch of the Widget class handlers. Working off jQuery, I've gotten as far as getting it to submit a POST request which reaches the controller - but the param formatting is all wrong and missing a bunch of the parameters sent with a TT form POST request. Do we have methods for creating proper POST requests from AJAX?
sophie: A cartoon-like representation of a girl standing on a hill, with brown hair, blue eyes, a flowery top, and blue skirt. ☀ (Default)
[personal profile] sophie
The Dreamhack machine currently seems to be suffering from a performance issue where if you try to start your Apache, it might tell you that Apache failed to start. In reality, the Apache server *has* started, but the 'start-apache' script is timing out before Apache can report that fact.

If the last line of your Apache log file is:

NOTE: Google::Checkout::* Perl modules were not found.

then Apache has most likely started successfully. (This is a normal warning on Dreamhack machines; we haven't used the Google Checkout code for some time and thus the modules are not installed on the Dreamhack machine.) You can verify this by navigating to your Dreamhack's Web address.

We're investigating this at the moment. This might require a reboot of the Dreamhack machine in the near future; we'll post about it here if that's the case.

[edit: We're going to reboot the Dreamhack machine. I'll edit this post again when it's up.]

[edit 2: The Dreamhack machine is back up, and I've rolled out a new version of start-apache that can wait a bit longer if Apache doesn't start up immediately. It prints out a "Waiting for Apache to start" message, and then checks every second (for up to 6 seconds) whether Apache started, so it shouldn't slow things down for anybody.]

Profile

dw_dev: The word "develop" using the Swirly D logo.  (Default)
Dreamwidth Open Source Development

February 2017

S M T W T F S
   1234
567 8910 11
12131415161718
19202122232425
262728    

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 28th, 2017 03:03 am
Powered by Dreamwidth Studios